一、继承
# 类的定义
# 旧式类定义 一般在定义单个类时使用
class 类名:
name = None
def func(self):
pass
# 新式类定义 一般在继承时使用
class 类名(指定需要继承的类):
name = None
def func(self):
pass
# 新式类定义
class A():
name = '张三'
def func(self):
# pass 不做处理
pass
# 旧式类
class B:
age = 20
def fucn(self):
pass
print(A.name)
print(B.age)
1-1 单继承
# 单继承 只继承一个类
class Father:
gender = '男'
def run(self):
print('跑步很快')
# 子类继承父类获取父类中属性和方法
class Son(Father):
# 定义子类的属性和方法
age = 20
def play(self):
print('玩游戏')
# 创建子类对象
s = Son()
# 使用子类对象操作父类的属性和方法以及自己的属性和方法
print(s.gender)
print(s.age)
s.run()
s.play()
# 单继承的使用
class Master:
name = '师父'
def flapjack(self):
print('摊鸡蛋煎饼')
class Apprentice(Master):
# 子类继承后可以不定义属性和方法,直接使用父类的方法
pass
a = Apprentice()
# 子类使用父类方法
a.flapjack()
1-2 多继承
# 单继承的使用
class Master:
name = '师父'
def flapjack(self):
print('摊鸡蛋煎饼')
class School:
name = '学校'
def flapjack(self):
print('摊肉肠煎饼')
class Apprentice(Master,School):
# 子类继承后可以不定义属性和方法,直接使用父类的方法
pass
a = Apprentice()
# 子类使用父类方法
a.flapjack()
# 查看子类的继承父类顺序
print(Apprentice.__mro__)
1-3 方法重写<