文档详情

面向对象-继承.pdf

发布:2022-11-23约1.08万字共11页下载文档
文本预览下载声明
课程:⾯向对象-继承 ⽬标 继承的概念 单继承 多继承 ⼦类重写⽗类的同名属性和⽅法 ⼦类调⽤⽗类的同名属性和⽅法 多层继承 super() 私有属性和私有⽅法 ⼀. 继承的概念 ⽣活中的继承,⼀般指的是⼦⼥继承⽗辈的财产。 拓展1 :经典类或旧式类 不由任意内置类型派⽣出的类,称之为经典类。 1 class 类名: 2 代码 3 拓展2 :新式类 1 class 类名(object): 2 代码 Python⾯向对象的继承指的是多个类之间的所属关系,即⼦类默认继承⽗类的所有属性和⽅法,具体如 下: 1 # ⽗类A 2 class A(object): 3 def __init__(self): 4 self.num = 1 5 6 def info_print(self): 7 print(self.num) 8 9 # ⼦类B 10 class B(A): 11 pass 12 13 14 result = B() 15 result.info_print() # 1 在Python中,所有类默认继承object类,object类是顶级类或基类;其他⼦类叫做派⽣类。 ⼆. 单继承 故事主线:⼀个煎饼果⼦⽼师傅,在煎饼果⼦界摸爬滚打多年,研发了⼀套精湛的摊煎饼果⼦的 技术。师⽗要把这套技术传授给他的唯⼀的最得意的徒弟。 分析:徒弟是不是要继承师⽗的所有技术? 1 # 1. 师⽗类 2 class Master(object): 3 def __init__(self): 4 self.kongfu = [古法煎饼果⼦配⽅] 5 6 def make_cake(self): 7 print(f运⽤{self.kongfu}制作煎饼果⼦) 8 9 10 # 2. 徒弟类 11 class Prentice(Master): 12 pass 13 14 15 # 3. 创建对象daqiu 16 daqiu = Prentice() 17 # 4. 对象访问实例属性 18 print(daqiu.kongfu) 19 # 5. 对象调⽤实例⽅法 20 daqiu.make_cake() 三. 多继承 故事推进:daqiu是个爱学习的好孩⼦,想学习更多的煎饼果⼦技术,于是,在百度搜索到⿊⻢程 序员,报班学习煎饼果⼦技术。 所谓多继承意思就是⼀个类同时继承了多个⽗类。 1 class Master(object): 2 def __init__(self): 3 self.kongfu = [古法煎饼果⼦配⽅] 4 5 def make_cake(self): 6 print(f运⽤{self.kongfu}制作煎饼果⼦) 7 8 9 # 创建学校类 10 class School(object): 11 def __init__(self): 12 self.kongfu = [⿊⻢煎饼果⼦配⽅] 13 14 def make_cake(self): 15 print(f运⽤{self.kongfu}制作煎饼果⼦) 16 17 18 class Prentice(School, Master): 19 pass 20 21 22 daqiu = Prentice() 23 print(daqiu.kongfu) 24 daqiu.make_cake() 注意:当⼀个类有多个⽗类的时候,默认使⽤第⼀个⽗类的同名属性和⽅法。 四. ⼦
显示全部
相似文档