Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन में कक्षाओं और विरासत का परिचय


ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग कोड के पुन:प्रयोज्य पैटर्न को प्रोजेक्ट में कोड अतिरेक को रोकने के लिए बनाता है। पुनरावर्तनीय कोड बनाने का एक तरीका इनहेरिटेंस के माध्यम से होता है, जब एक उपवर्ग दूसरे बेस क्लास से कोड का लाभ उठाता है।

वंशानुक्रम तब होता है जब एक वर्ग दूसरे वर्ग के भीतर लिखे कोड का उपयोग करता है।

चाइल्ड क्लास या सबक्लास नामक क्लास पैरेंट क्लास या बेस क्लास से मेथड्स और वेरिएबल को इनहेरिट करते हैं।

चूंकि चाइल्ड सबक्लास पेरेंट बेस क्लास से इनहेरिट कर रहा है, चाइल्ड क्लास पेरेंट के कोड का पुन:उपयोग कर सकता है, जिससे प्रोग्रामर को कोड की कम लाइनों का उपयोग करने और रिडंडेंसी को कम करने की अनुमति मिलती है।

व्युत्पन्न वर्गों को उनके मूल वर्ग की तरह ही घोषित किया जाता है; हालांकि, इनहेरिट करने के लिए बेस क्लास की सूची क्लास के नाम के बाद दी गई है -

कक्षा SubClassName (ParentClass1[,parentClass2,...]):'वैकल्पिक वर्ग दस्तावेज़ीकरण स्ट्रिंग' class_suite

उदाहरण

क्लास पेरेंट:# पैरेंट क्लास पेरेंटएट =100 डीईएफ़ __init__ (सेल्फ):प्रिंट "कॉलिंग पेरेंट कंस्ट्रक्टर" डिफ पेरेंटमेथोड (सेल्फ):प्रिंट 'कॉलिंग पेरेंट मेथड' डिफ सेटएटर (सेल्फ, एटीआर):पेरेंट.पैरेंटएट्र =एटीआर def getAttr(self):प्रिंट "पैरेंट एट्रिब्यूट:", पैरेंट.पेरेंटएट्रक्लास चाइल्ड (पैरेंट):# चाइल्ड क्लास डिफाइन __init__ (सेल्फ):प्रिंट "कॉलिंग चाइल्ड कंस्ट्रक्टर" डिफ चाइल्डमैथोड (सेल्फ):प्रिंट 'कॉलिंग चाइल्ड मेथड' सी =चाइल्ड () # चाइल्डक.चाइल्डमेथोड का उदाहरण () # चाइल्ड कॉल इसकी मेथडc.parentMethod () # पैरेंट की मेथड को कॉल करता है। 

आउटपुट

जब उपरोक्त कोड निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है

चाइल्ड कंस्ट्रक्टर को कॉल करना चाइल्ड मेथड को कॉल करना पैरेंट मेथड को कॉल करना पैरेंट एट्रिब्यूट :200 

  1. पायथन में विरासत

    इस लेख में, हम पायथन 3.x में इनहेरिटेंस और एक्सटेंडिंग क्लासेस सीखेंगे। या पहले। वंशानुक्रम वास्तविक दुनिया के संबंधों का अच्छी तरह से प्रतिनिधित्व करता है, पुन:प्रयोज्य प्रदान करता है और पारगमन का समर्थन करता है। यह तेजी से विकास समय, आसान रखरखाव और विस्तार में आसान प्रदान करता है। वंशानुक्रम को

  1. पायथन में क्लास इनहेरिटेंस कैसे काम करता है?

    कक्षाओं में विरासत किसी वर्ग को नए सिरे से परिभाषित करने के बजाय, हम नए वर्ग के नाम के बाद मूल वर्ग को कोष्ठक में सूचीबद्ध करके इसे पहले से मौजूद वर्ग से प्राप्त करके एक वर्ग बना सकते हैं। चाइल्ड क्लास को अपने पैरेंट क्लास की विशेषताएँ विरासत में मिलती हैं, और हम उन एट्रिब्यूट्स का उपयोग इस तरह कर

  1. पायथन में कक्षाओं को कैसे परिभाषित करें?

    पायथन में, लगभग सभी कोड कक्षाओं का उपयोग करके कार्यान्वित किए जाते हैं। कोड के संबंधित टुकड़ों को एक साथ रखने के लिए प्रोग्रामर कक्षाओं का उपयोग करते हैं। यह कीवर्ड क्लास का उपयोग करके किया जाता है, जो ऑब्जेक्ट-ओरिएंटेड कंस्ट्रक्शन का एक संग्रह है। एक वर्ग वस्तुओं को बनाने के लिए एक टेम्पलेट है। ऑब