क्लास इनहेरिटेंस

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

Alex Yarosh

Content Quality Analyst @ DataCamp

कोड पुन: उपयोग

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

कोड पुन: उपयोग

 

1. किसी ने पहले से कर दिया है

 

  • मॉड्यूल तय फंक्शनैलिटी के लिए बढ़िया हैं
  • OOP कस्टमाइज़ फंक्शनैलिटी के लिए बढ़िया है

कई Python पैकेजों के लोगो

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

कोड पुन: उपयोग

 

1. किसी ने पहले से कर दिया है

 

2. DRY: Don't Repeat Yourself

विविध GUI एलिमेंट्स

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

कोड पुन: उपयोग

 

1. किसी ने पहले से कर दिया है

 

2. DRY: Don't Repeat Yourself

विभिन्न GUI एलिमेंट्स का उपयोग न करें

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

इनहेरिटेंस

 

$$\Large{\text{नई class functionality = पुरानी class functionality + extra}}$$

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

account क्लास

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

account से इनहेरिटेड savings account

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

account से इनहेरिटेड दो क्लास

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

checking account में संशोधित method

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

क्लास इनहेरिटेंस लागू करना

class BankAccount:
    def __init__(self, balance):
       self.balance = balance

    def withdraw(self, amount):
        self.balance -= amount

# Empty class inherited from BankAccount
class SavingsAccount(BankAccount):
    pass

class MyChild(MyParent):
   # Do stuff here
  • MyParent: वह class जिसकी functionality एक्सटेंड/इनहेरिट की जा रही है
  • MyChild: वह class जो यह functionality इनहेरिट करेगी और और जोड़ देगी
Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

चाइल्ड क्लास में पेरेंट का सारा डेटा होता है

# Constructor BankAccount से इनहेरिटेड
savings_acct = SavingsAccount(1000)
type(savings_acct)
__main__.SavingsAccount
# Attribute BankAccount से इनहेरिटेड
savings_acct.balance
1000
# Method BankAccount से इनहेरिटेड
savings_acct.withdraw(300)
Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

इनहेरिटेंस: "is-a" संबंध

SavingsAccount, BankAccount है

(संभावित विशेष फीचर्स के साथ)

savings_acct = SavingsAccount(1000)
isinstance(savings_acct, SavingsAccount)
True
isinstance(savings_acct, BankAccount)
True

 

 

acct = BankAccount(500)
isinstance(acct,SavingsAccount)
False
isinstance(acct,BankAccount)
True
Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

अभ्यास करते हैं!

Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

Preparing Video For Download...