Lesson 17 of 36Article16 min
Modifiers & Encapsulation
public — visible everywhere. private — only inside same class. protected — class + subclasses + package.
Modifiers — public, private, protected
public — visible everywhere. private — only inside same class. protected — class + subclasses + package.
Use private fields + public getters/setters for controlled access.
Real-life example: private is your diary lock — only you open it. public is a shop window — everyone can see.
Access modifiers
class Account {
private double balance;
public void deposit(double amount) {
if (amount > 0) balance += amount;
}
public double getBalance() {
return balance;
}
}Encapsulation — protect object state
Encapsulation hides internal data and exposes methods as the only way to change it.
Validation in setters prevents bad data — negative age, empty name.
Real-life example: ATM shows balance and buttons — you cannot reach inside and move wires. Methods are the buttons.
Getter and setter
class Student {
private String name;
public String getName() { return name; }
public void setName(String name) {
if (name != null && !name.isBlank()) {
this.name = name;
}
}
}