وراثت یکی از مفاهیم اساسی در برنامهنویسی شیءگرا است که در زبان پایتون نیز قابل استفاده است. وراثت به ما این امکان را میدهد که یک کلاس جدید را بر اساس یک کلاس موجود تعریف کنیم و ویژگیها و رفتارهای آن را به ارث ببریم. این امر به ما این امکان را میدهد که کدهای تکراری را کاهش دهیم و کد را بهبود بخشیم.
در پایتون، برای ایجاد یک کلاس جدید بر اساس یک کلاس موجود، کافی است نام کلاس جدید را تعریف کنیم و نام کلاس مورد نظر را درون پرانتز بنویسیم. به عنوان مثال:
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
print("Animal is speaking")
class Dog(Animal):
def __init__(self, name, breed):
super().__init__(name)
self.breed = breed
def speak(self):
print("Dog is barking")
dog = Dog("Max", "Labrador")
print(dog.name) # Output: Max
dog.speak() # Output: Dog is barking
در این مثال، کلاس Animal
یک کلاس پایه است که دارای یک متد speak
است که یک پیام را چاپ میکند. سپس کلاس Dog
تعریف میشود که از کلاس Animal
ارث برده است. کلاس Dog
همچنین دارای یک متد speak
است که یک پیام دیگر را چاپ میکند. با ایجاد یک شیء از کلاس Dog
، میتوانیم به ویژگیها و رفتارهای کلاس Animal
و همچنین کلاس Dog
دسترسی داشته باشیم.
در این مثال، متد __init__
نیز در کلاس Dog
تعریف شده است. این متد برای مقداردهی اولیه به ویژگیهای کلاس استفاده میشود. با استفاده از super().__init__(name)
، مقدار name
به متد __init__
کلاس پدر یعنی Animal
منتقل میشود.
وراثت در پایتون امکانات بسیاری را برای ما فراهم میکند. ما میتوانیم ویژگیها و متدهای کلاس پدر را در کلاس فرزند تغییر دهیم، متدهای جدیدی به کلاس فرزند اضافه کنیم و حتی میتوانیم متدهای کلاس پدر را بازنویسی کنیم. این امکانات به ما این امکان را میدهد که کدهای تکراری را کاهش دهیم و کد را بهبود بخشیم.
در نتیجه، وراثت یکی از اصول اساسی برنامهنویسی شیءگرا است که در پایتون نیز قابل استفاده است. با استفاده از وراثت، میتوانیم کدهای تکراری را کاهش دهیم و کد را بهبود بخشیم.
دیدگاهها