當父類的方法重寫不能滿足子類的需求時,可以對方法進行重寫。
重寫父類方法有兩種情況:
①覆蓋父類的方法
②對父類方法進行擴展
在類的繼承中,如果重定義某個方法,該方法會覆蓋父類的同名方法,但有時,我們希望能同時實現父類的功能,這時,我們就需要調用父類的方法了,可通過使用 super 來實現。
對父類方法進行擴展:
在開發中,子類方法實現包含父類方法實現,即父類原本封裝的方法是子類的一部分。
具體實現方式:
1.在子類中重寫父類的方法
2.在需要的位置使用super.父類方法,來調用父類方法的執行
3.編寫子類的特殊需求
super的用法如下:
對父類方法進行擴展時需要使用super
格式如下:在子類重寫方法中使用 super().父類方法()
代碼如下:
class Dog:
def eat(self):
print("正在吃東西")
def bark(self):
print("汪汪叫")
class xiaotiaoquan(Dog):
def bark(self):
#1.針對子類特有的需求編寫代碼
#2.super().父類方法() 使用super來調用父類方法
print("一邊飛一邊叫")
super().bark()
xtq = xiaotiaoquan()
xtq.bark()
#輸出
#汪汪叫
#一邊飛一邊叫