1. 程式人生 > 其它 >python:面向物件程式設計中的繼承和多型

python:面向物件程式設計中的繼承和多型

技術標籤:python基礎面向物件程式設計python

一、繼承和多型

1、繼承的好處:就是子類獲得了父類的全部功能。

2、多型:當子類和父類存在相同的方法時,子類的方法覆蓋了父類的方法,在程式碼執行的時候,總是會呼叫子類的方法。

二、在程式設計中最常見的使用舉例如下(使用python實現):

# Animal是父類
class Animal():
    def __init__(self,name):
        self.name = name
    def Call(self):
        pass
    def Run(self):
        print("I am {Name}, Running.....".format(Name=self.name))

# Dog是子類
class Dog(Animal):
    def __init__(self, name):
        super().__init__(name)
        self.name =name
    def Call(self):
        print('I am {Name}, 汪汪汪。。。。。'.format(Name=self.name))

# Cat是子類
class Cat(Animal):
    def __init__(self, name):
        super().__init__(name)
        self.name =name
    def Call(self):
        print('I am {Name}, 喵喵喵喵。。。。。'.format(Name=self.name))

# Sheep是子類
class Sheep(Animal):
    def __init__(self, name):
        super().__init__(name)
        self.name = name
    def Call(self):
        print('I am {Name}, 咩咩咩咩咩咩。。。。。'.format(Name=self.name))
    def Run(self):
        print('我是 {Name}, Running.....'.format(Name=self.name))
    
animals = [Dog("Dogggg"),
    Cat("Cattttt"),
    Sheep("Sheepppp")]

for item in animals:
    item.Call()
    item.Run()

執行效果如下: