# एनकैप्सुलेशन — कोर जावा

Source: https://www.geekswithgeeks.com/hi/core-java/java-encapsulation

> Java के चार एक्सेस स्तरों — private, package-private, protected, public — के पीछे आंतरिक स्टेट छुपाएँ, और सत्यापित getter व setter दें।

## चार एक्सेस स्तर

`private`, पैकेज-प्राइवेट (कोई कीवर्ड नहीं), `protected`, `public`। सबसे सीमित स्तर से शुरू करें।

## गेटर व सेटर

फ़ील्ड `private` रखें और नियंत्रित एक्सेसर दें। सेटर मान जाँच सकता है; गेटर गणना कर सकता है।

```java
public class Account {
    private double balance;

    public double getBalance() { return balance; }
    public void deposit(double amt) {
        if (amt <= 0) throw new IllegalArgumentException("amt");
        balance += amt;
    }
}
```
