بکندباز

وراثت در پایتون

وراثت یکی از مفاهیم اساسی در برنامه‌نویسی شیءگرا است که در زبان پایتون نیز قابل استفاده است. وراثت به ما این امکان را می‌دهد که یک کلاس جدید را بر اساس یک کلاس موجود تعریف کنیم و ویژگی‌ها و رفتارهای آن را به ارث ببریم. این امر به ما این امکان را می‌دهد که کدهای تکراری را کاهش دهیم و کد را بهبود بخشیم.

در پایتون، برای ایجاد یک کلاس جدید بر اساس یک کلاس موجود، کافی است نام کلاس جدید را تعریف کنیم و نام کلاس مورد نظر را درون پرانتز بنویسیم. به عنوان مثال:

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 منتقل می‌شود.

وراثت در پایتون امکانات بسیاری را برای ما فراهم می‌کند. ما می‌توانیم ویژگی‌ها و متدهای کلاس پدر را در کلاس فرزند تغییر دهیم، متدهای جدیدی به کلاس فرزند اضافه کنیم و حتی می‌توانیم متدهای کلاس پدر را بازنویسی کنیم. این امکانات به ما این امکان را می‌دهد که کدهای تکراری را کاهش دهیم و کد را بهبود بخشیم.

در نتیجه، وراثت یکی از اصول اساسی برنامه‌نویسی شیءگرا است که در پایتون نیز قابل استفاده است. با استفاده از وراثت، می‌توانیم کدهای تکراری را کاهش دهیم و کد را بهبود بخشیم.

zohreh

مدیر وب سایت بکندباز

دیدگاه‌ها

*
*