Encapsulation(एनकैप्सूलेशन)
यह ऐसी प्रक्रिया है जिसमें डेटा और फंक्शन को एक साथ बांध दिया जाता है। ये फंक्शन डेटा पर कार्य करने के लिए उत्तरदायी होते हैं। डेटा और फक्शन को एक साथ बांधने का कार्य class के माध्यम से किया जाता है। इस प्रकार यह कहा जा सकता है कि यदि किसी class(क्लास) के Data(डेटा) को प्रयोग करना हो तो सामान्यतः यह कार्य उसी class(क्लास) के फंक्शन के माध्यम से किया जा सकता है।
encapsulation(एनकैप्सुलेशन) को real-life Example से Consider करके समझते हैं, एक कंपनी में, विभिन्न sections हैं जैसे कि accounts section, finance section, sales section आदि। finance section सभी financial transactions(लेनदेन) को संभालता है और finance(वित्त) से संबंधित सभी Data का रिकॉर्ड रखता है। इसी तरह, sales section, sales से related सभी activities को संभालता है और सभी sales (बिक्री) का रिकॉर्ड रखता है। अब ऐसी स्थिति उत्पन्न हो सकती है जब किसी कारण से finance section के किसी अधिकारी को किसी विशेष महीने में sales(बिक्री) के बारे में सभी डेटा की आवश्यकता हो। इस मामले में, उसे सीधे sales section के डेटा तक पहुंचने की अनुमति नहीं है। उसे पहले sales section में किसी अन्य अधिकारी से संपर्क करना होगा और फिर उससे विशेष डेटा देने का अनुरोध करना होगा। इसी तरह encapsulation(एनकैप्सुलेशन) काम करता है।
C++ में Class और Access Modifier का उपयोग करके encapsulation लागू किया जा सकता है ।
For Example:-
Output:-
5
Explain Example:-
उपरोक्त program में variable 'x' को private बनाया गया है। इस variable को केवल get() और set() फंक्शन का उपयोग करके Access और manipulate किया जा सकता है जो class के अंदर मौजूद हैं। इस प्रकार हम कह सकते हैं कि यहाँ, variable 'x' और Function get() और set() एक साथ बंधे हुए हैं जो कि Encapsulation के अलावा और कुछ नहीं है।
Role of access specifiers in Encapsulation
जैसा कि हमने ऊपर के उदाहरण में देखा है, access specifiers(एक्सेस स्पेसिफायर) C++ में Encapsulation (इनकैप्सुलेशन) को लागू करने में महत्वपूर्ण भूमिका निभाता है।
Encapsulation (इनकैप्सुलेशन) को लागू करने की प्रक्रिया को दो चरणों में sub-divided किया जा सकता है:
- private access specifiers(एक्सेस स्पेसिफायर) का उपयोग करके data members को private के रूप में label किया जाना चाहिए
- Member Function जो data members में manipulates (हेरफेर) करता है, उसे public access specifier का उपयोग करके public के रूप में label किया जाना चाहिए
2 Comments
kya opps ka concept sabhi programming language me some hi hota hain
ReplyDeletecan you provide in English
ReplyDelete