एनकैप्सुलेशन का सार:
Encapsulation डेटा (फ़ील्ड/वेरिएबल) और उस डेटा पर काम करने वाली विधियों को एक एकल, सुसंगत कम्प्यूटेशनल इकाई (क्लास) में लपेटना है। यह एक सुरक्षा कवच के रूप में कार्य करता है जो डेटा को शील्ड के बाहर बाहरी कोड द्वारा मनमाने ढंग से एक्सेस और संशोधित होने से रोकता है।
डेटा छिपाने की अनिवार्यता:
एनकैप्सुलेशन के बिना, सार्वजनिक क्षेत्र किसी भी समय दुष्ट या लापरवाह क्लाइंट कोड द्वारा दूषित हो सकते हैं:
// खतरनाक अनकैप्सुलेटेड कोड:
वर्ग बैंक खाता {
सार्वजनिक दोहरा संतुलन; // सार्वजनिक भेद्यता!
}
// क्लाइंट कोड निष्पादित कर सकता है:
BankAccount acc = new BankAccount();
एसीसी.बैलेंस = -50000.0; // व्यावसायिक अखंडता को भ्रष्ट करता है!
बैलेंस को निजी घोषित करके और सभी अपडेट को सार्वजनिक डिपॉजिट() या निकासी() विधि के माध्यम से प्रसारित करके, वर्ग सख्त सत्यापन नियमों को लागू करता है (उदाहरण के लिए, नकारात्मक मात्रा और ओवरड्राफ्ट को अस्वीकार करना)।