Abstraction किसी context के संबंध में आवश्यक characteristics और व्यवहार को context करने की अवधारणा है डेटा छुपाना डेटा abstraction के रूप में जाना जाता है।
Abstraction ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग की एक विशेषता है, जहां पर आप यूजर के लिए relevant details दिखाते हैं और Irrelevant details छिपाते हैं उदाहरण के लिए, जब आप किसी को एक ईमेल send करते हो तो आप केवल send पर क्लिक करते हो और आपको success संदेश मिलता है, ईमेल उस id पर पहुंच जाती है जो id आपने दी है ईमेल किसी दूसरी id पर कैसे पहुँचती है यह आपको पता नहीं चलता क्योकि यह आपके लिए Irrelevant details है।
इस सुविधा का उपयोग करने का प्रमुख लाभ यह है कि जब आप कोड developed करते हो और आपको कोड में कुछ समायोजन करने की आवश्यकता होती है तो आपको केवल उच्च स्तरीय वर्ग को modified करने की आवश्यकता होती है, जहां आपने सदस्यों को निजी रूप में घोषित किया है चूंकि कोई भी वर्ग इन डेटा सदस्यों को सीधे एक्सेस नहीं कर रहा है, इसलिए आपको निम्न स्तर के वर्ग कोड को बदलने की आवश्यकता नहीं है।
कल्पना कीजिए की आप इन आंकड़ों के सदस्यों को सार्वजनिक कर चुके हैं और आप कुछ समय से कोड को बदलना चाहते हो तो आपको उन सभी वर्गों में आवश्यक समायोजन करना होगा जो members में सीधे प्रवेश कर रहे है।
#include <iostream> using namespace std; class implementAbstraction { private: int c, d; public: // method to set values of // private members void set(int x, int y) { c = x; d = y; } void display() { cout<<"c = " <<c << endl; cout<<"d = " << d << endl; } }; int main() { implementAbstraction obj; obj.set(30, 40); obj.display(); return 0; }