Python में OOP कॉन्सेप्ट्स
Python एक ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषा है। हम Python में आसानी से क्लास और ऑब्जेक्ट बना और उपयोग कर सकते हैं।
Python प्रोग्रामिंग भाषा के प्रमुख ऑब्जेक्ट-ओरिएंटेड कॉन्सेप्ट्स नीचे दिए गए हैं:
ऑब्जेक्ट; क्लास; मेथड; इनहेरिटेंस; पॉलीमॉर्फिज्म; डेटा एब्स्ट्रैक्शन; एनकैप्सुलेशन
ऑब्जेक्ट
ऑब्जेक्ट एक एंटिटी है जिसमें स्टेट और बिहेवियर होता है। यह फिजिकल और लॉजिकल हो सकता है। उदाहरण: माउस, कीबोर्ड, चेयर, टेबल, पेन आदि।
Python में सब कुछ एक ऑब्जेक्ट है, और लगभग हर चीज़ के एट्रिब्यूट्स और मेथड्स होते हैं।
क्लास
क्लास को ऑब्जेक्ट्स के संग्रह के रूप में परिभाषित किया जा सकता है। यह एक लॉजिकल एंटिटी है जिसमें कुछ विशिष्ट एट्रिब्यूट्स और मेथड्स होते हैं। उदाहरण: यदि आपके पास स्टूडेंट क्लास है तो उसमें एट्रिब्यूट और मेथड होने चाहिए जैसे ईमेल आईडी, नाम, उम्र, रोल नंबर आदि।
मेथड
मेथड एक फंक्शन है जो किसी ऑब्जेक्ट से जुड़ा होता है। Python में, मेथड केवल क्लास इंस्टेंस तक सीमित नहीं है। किसी भी ऑब्जेक्ट टाइप के मेथड्स हो सकते हैं।
इनहेरिटेंस
इनहेरिटेंस निर्दिष्ट करता है कि एक ऑब्जेक्ट पैरेंट ऑब्जेक्ट के सभी गुण और व्यवहार प्राप्त करता है। इनहेरिटेंस का उपयोग करके हम मौजूदा क्लास में थोड़े या बिना किसी बदलाव के नई क्लास परिभाषित कर सकते हैं। नई क्लास को डेराइव्ड क्लास या चाइल्ड क्लास कहा जाता है और जिससे यह गुण प्राप्त करती है उसे बेस क्लास या पैरेंट क्लास कहा जाता है। यह कोड की पुन: उपयोगिता प्रदान करता है।
पॉलीमॉर्फिज्म
पॉलीमॉर्फिज्म परिभाषित करता है कि एक कार्य को अलग-अलग तरीकों से किया जा सकता है। उदाहरण: हमारे पास एनिमल क्लास है और सभी जानवर बोलते हैं। लेकिन वे अलग-अलग तरीके से बोलते हैं। यहां, "बोलना" व्यवहार पूरी तरह से जानवर पर निर्भर करता है। तो, अमूर्त "एनिमल" वास्तव में "बोलता" नहीं है, लेकिन विशिष्ट जानवरों में "बोलने" की क्रिया का ठोस कार्यान्वयन होता है।
एनकैप्सुलेशन
एनकैप्सुलेशन का उपयोग मेथड्स और वेरिएबल्स तक पहुंच को प्रतिबंधित करने के लिए किया जाता है। एनकैप्सुलेशन में, कोड और डेटा को एक सिंगल यूनिट में एक साथ लपेटा जाता है ताकि वे दुर्घटनावश संशोधित न हों।
डेटा एब्स्ट्रैक्शन
डेटा एब्स्ट्रैक्शन और एनकैप्सुलेशन समानार्थी हैं क्योंकि डेटा एब्स्ट्रैक्शन एनकैप्सुलेशन के माध्यम से प्राप्त होता है।
एब्स्ट्रैक्शन का उपयोग आंतरिक विवरण छिपाने और केवल कार्यक्षमता दिखाने के लिए किया जाता है। किसी चीज़ को अमूर्त बनाने का अर्थ है चीजों को नाम देना, ताकि नाम उस मूल विचार को पकड़ सके जो कोई फंक्शन या पूरा प्रोग्राम करता है।