🟣 OOP · Lesson 22
Encapsulation
Encapsulation क्या है?
Encapsulation का मतलब है data (variables) और उस data पर काम करने वाले code (methods) को एक ही unit — class — में लपेटना और अंदरूनी details को बाहर से छुपाना। Java में यह fields को private बनाकर और public getter/setter methods से controlled access देकर किया जाता है।
💡 असल दुनिया की मिसाल
दवा का capsule दवा को खोल में लपेटता है — आप powder को सीधे नहीं छू सकते। वैसे ही encapsulation data को class में लपेटता है और आप उसे सिर्फ़ methods से access करते हैं।
Encapsulation कैसे करें
- class के fields को
privateरखें। - पढ़ने के लिए
publicgetter methods दें। - बदलने के लिए
publicsetter methods दें (validation के साथ)।
Java
class Account { private double balance; // छुपा हुआ data public double getBalance() { return balance; } public void deposit(double amt) { if (amt > 0) balance += amt; // validation } }
▶ Output
500.0
Encapsulation के फ़ायदे
| फ़ायदा | क्यों ज़रूरी |
|---|---|
| Data hiding | बाहरी code सीधे balance को गलत value नहीं दे सकता। |
| Control | setter input validate कर सकता है (negative deposit नहीं)। |
| Flexibility | बाद में अंदरूनी code बदल सकते हैं बिना दूसरी classes तोड़े। |
⚠️ आम गलती
fields को public बनाना encapsulation खत्म कर देता है — कोई भी balance = -9999 कर सकता है। हमेशा fields private रखें।
सारांश
- Encapsulation = data + methods एक class में, अंदरूनी details छुपी हुई।
privatefields +publicgetters/setters से किया जाता है।- देता है data hiding, validation, flexibility और controlled access।
💻 लाइव कोड एडिटर
इस पेज के प्रोग्राम यहीं तैयार हैं — चलाएँ, बदलें और सीखें। कुछ भी इंस्टॉल किए बिना।
OneCompiler द्वारा संचालित। कोड एडिटर में अपने आप आ जाता है — Run दबाकर आउटपुट देखें। अगर एडिटर न खुले तो नए टैब में खोलें.
