1 ''' 2 子类重写父类同名属性和方法 3 ''' 4 5 6 # 1. 师父类,属性和方法 7 class Master(object): 8 def __init__(self): 9 self.kongfu = '[古法煎饼果子配方]' 10 11 def make_cake(self): 12 print(f'执行了Master类的make_cake方法--运用{self.kongfu}制作煎饼果子') 13 14 15 # 为了验证多继承,添加School父类 16 class School(object): 17 def __init__(self): 18 self.kongfu = '[高等教育煎饼果子配方]' 19 20 def make_cake(self): 21 print(f'执行了School类的make_cake方法--运用{self.kongfu}制作煎饼果子') 22 23 24 # 2. 定义徒弟类,继承师父类 和 学校类, 添加和父类同名的属性和方法 25 class Prentice(School, Master): # 多继承 26 def __init__(self): 27 self.kongfu = '[独创煎饼果子技术]' # 重写父类的属性kongfu 28 29 def make_cake(self): # 重写父类的方法make_cake 30 print(f'运用{self.kongfu}制作煎饼果子') 31 # super().make_cake() # 执行了School类的make_cake方法--运用[独创煎饼果子技术]制作煎饼果子 32 33 34 # 3. 用徒弟类创建对象,调用实例属性和方法 35 daqiu = Prentice() 36 37 print(daqiu.kongfu) 38 39 daqiu.make_cake() 40 41 # 结论:如果子类和父类拥有同名属性和方法,子类创建对象调用属性和方法的时候,调用到的是子类里面的同名属性和方法
标签:kongfu,子类,self,煎饼果子,cake,父类,重写,make From: https://www.cnblogs.com/allenxx/p/17567039.html