1 # 多继承:一个子类有多个父类
2
3 '''
4 如果在继承元组中列了一个以上的类,那么它就被称作"多继承" 。
5 语法格式:
6 class 类名(父类1, 父类2, 父类3...):
7 属性
8 方法
9 注意:需要注意圆括号中父类的顺序,若是父类中有相同的方法名,
10 而在子类使用时未指定,python从左至右搜索。即方法在子类中未找到时,
11 从左到右查找父类中是否包含方法。
12 '''
13 class Father():
14 def __init__(self, name, house, car):
15 self.name = name
16 self.house = house
17 self.car = car
18 def work(self):
19 print("挣钱养家")
20 def eat(self):
21 print("Father -- 吃饭")
22 class Mother():
23 def __init__(self, name, face):
24 self.name = name
25 self.face = face
26 def shopping(self):
27 print("貌美如花")
28 def eat(self):
29 print("Mother -- 吃饭")
30
31 # 多继承
32 class Son(Mother, Father):
33 def __init__(self, house, name, face, car, toy):
34 self.toy = toy
35 Mother.__init__(self, name, face)
36 Father.__init__(self, name, house, car)
37 def eat(self):
38 Mother.eat(self)
39 Father.eat(self)
40 print("son -- eat")
41
42 # 就近原则: 如果父类中有相同的属性或方法名时,默认调用小括号中
43 # 排在前面的父类的内容。
44 son1 = Son("200平","SON", 120, "Car", "bike")
45 son1.eat()
46 son1.shopping()
47 son1.work()