यहाँ एन्कैप्सुलेशन और अमूर्त की संक्षिप्त परिभाषा दी गई है।
अमूर्त:
जावा में अमूर्तता की प्रक्रिया का उपयोग कुछ विवरणों को छिपाने के लिए किया जाता है और केवल ऑब्जेक्ट की आवश्यक विशेषताओं को दिखाता है। दूसरे शब्दों में, यह किसी वस्तु (इंटरफ़ेस) के बाहरी दृश्य से संबंधित है। विभिन्न साइटों में इसके लिए एकमात्र अच्छा उदाहरण मैं देख रहा हूं।
encapsulation:
इसका मूल रूप से निजी, सार्वजनिक, संरक्षित आदि जैसे संशोधक की मदद से वस्तु की स्थिति को छिपाने के बारे में है, हम केवल आवश्यकता होने पर सार्वजनिक तरीकों से राज्य को उजागर करते हैं।
हम जैसे संशोधक के साथ क्या हासिल करते हैं private
, public
यह भी बाहर की दुनिया से अनावश्यक विवरण छुपाता है जो एक अमूर्त अवधारणा के अलावा कुछ भी नहीं है
इसलिए, उपरोक्त विवरण से ऐसा लगता है कि एनकैप्सुलेशन अमूर्तता का एक हिस्सा है या हम कह सकते हैं कि यह अमूर्तता का एक सबसेट है। लेकिन तब एनकैप्सुलेशन शब्द का आविष्कार क्यों किया गया जब हम इसे केवल अमूर्तता से निपट सकते थे? मुझे यकीन है कि कुछ बड़ा अंतर होना चाहिए जो उन्हें अलग करता है लेकिन नेट पर अधिकांश सामग्री उन दोनों के लिए लगभग एक ही बात कहती है।
हालाँकि यह सवाल इस मंच पर पहले भी उठाया जा चुका है लेकिन मैं इसे फिर से विशिष्ट संदेहों के साथ पोस्ट कर रहा हूँ। कुछ उत्तर यह भी कहते हैं कि अमूर्तता एक अवधारणा है और इनकैप्सुलेशन कार्यान्वयन है। लेकिन मैं इसे नहीं खरीदता - अगर यह सच है, तो मैं सोच सकता हूं कि हमें भ्रमित करने के लिए ये दो अलग-अलग अवधारणाएं प्रदान की जाती हैं।
अपडेट: - ५ साल बाद मैं अपना खुद का उत्तर लेकर आया हूं जो कि इस पोस्ट में और नीचे दिए गए उत्तरों के आधार पर है
private
public
, जैसे कि वे केवल सूचना / डेटा छिपाते हैं जो हम इसे करते हैं क्योंकि यह उदाहरण के डेटा की सुरक्षा के लिए एक अच्छा अभ्यास है।
An 'abstraction' (noun) is a concept that acts as a super-categorical noun for all subordinate concepts, and connects any related concepts as a group, field, or category.