R
Rishtaara
Java Fundamentals
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;
        }
    }
}