在Python中,如果子類想要調用父類的某個方法或屬性,可以通過super()函數來實現。super()函數返回一個代理對象,該代理對象可以將方法解釋器轉發到該類及其父類的其他實例方法中。
# 定義一個父類 class Animal: def __init__(self, name): self.name = name def eat(self): print(f"{self.name}正在吃東西。") # 定義一個子類 class Dog(Animal): def __init__(self, name, breed): super().__init__(name) self.breed = breed def bark(self): print(f"{self.name}正在汪汪叫。") # 創建一個Dog實例,并調用它的一個方法 my_dog = Dog("旺財", "土狗") my_dog.bark()
在這個例子中,我們創建了一個Animal類作為父類,它有一個名為eat的方法。我們又創建了一個Dog類作為Animal類的子類,它有一個名為bark的方法。在創建Dog類實例時,我們使用super()函數來調用Animal類的init方法, 初始化子類的name屬性。這個示例演示了如何使用super()函數調用父類的__init__(方法以初始化子類的屬性。)
總之,在Python中,通過super()函數可以輕松地訪問父類中的方法和屬性,子類可以重寫父類的屬性和方法,提供自己的實現。
上一篇vue實戰功能