Subclass को कस्टमाइज़ करें
Inheritance शक्तिशाली है क्योंकि यह हमें मौजूदा कोड को फिर से लिखे बिना उसे reuse और customize करने देता है. चाइल्ड क्लास के अंदर पैरेंट क्लास के methods को कॉल करके, हम उन methods के सारा कोड reuse करते हैं, जिससे हमारा कोड संक्षिप्त और manageable रहता है.
इस अभ्यास में, आप Employee क्लास से inherited Manager क्लास पर काम जारी रखेंगे. आप एक constructor जोड़ेंगे जो Employee के constructor पर आधारित होगा, और एक अतिरिक्त आर्ग्युमेंट लेगा जिसमें आप वह project निर्दिष्ट कर सकेंगे जिस पर मैनेजर काम कर रहा है.
Employee क्लास का एक simplified वर्ज़न, साथ ही आपने पहले बनाया हुआ Manager क्लास का शुरुआती भाग, आपके लिए script.py में दिया गया है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Object-Oriented Programming परिचय
अभ्यास निर्देश
Managerमें ऐसा constructor जोड़ें जोname,salary(डिफॉल्ट वैल्यू50000) औरproject(डिफॉल्ट वैल्यूNone) स्वीकार करे.Managerके constructor के अंदर, पैरेंट क्लासEmployeeके constructor को कॉल करें और पैरेंट क्लास के constructor में परिभाषित तीनों आर्ग्युमेंट्स प्रदान करें.selfका उपयोग करके संबंधित attribute कोprojectआर्ग्युमेंट से असाइन करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
class Employee:
def __init__(self, name, salary=30000):
self.name = name
self.salary = salary
def give_raise(self, amount):
self.salary += amount
class Manager(Employee):
# Add a constructor
def __init__(self, name, ____=____, ____=____):
# Call the parent's constructor
____.____(____, ____, salary)
# Assign project attribute
____.____ = ____
def display(self):
print("Manager ", self.name)