python继承
2022/3/4 22:15:41
本文主要是介绍python继承,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
多态
多态-单继承,多继承
class master1(object): def __init__(self): self.konfu="古法制作" def make(self): print(f'{self.konfu}美味豆腐') class master2(object): def __init__(self): self.konfu="简单制作" def make(self): print(f'{self.konfu}美味海鲜') # 验证单继承 class apprentic1(master1): pass t1=apprentic1() # 对象访问实例属性 print(t1.konfu) # 实例 t1.make() # 验证多继承 class apprentice2(master1,master2): pass t2=apprentice2() print(t2.konfu) t2.make() # 一个类继承多个类,默认第一个父类的属性和功能方法
单继承重写(修改)父类同名属性和方法
class master1(object): def __init__(self): self.konfu="古法制作" def make(self): print(f'{self.konfu}美味豆腐') # 验证单继承重定义修改父类同名属性和方法 class apprentic1(master1): def __init__(self): self.konfu = "最新独创法制作" def make(self): print(f'{self.konfu}更美味可口豆腐') t1=apprentic1() # 对象访问实例修改的属性 print(t1.konfu) # 修改的方法实例 t1.make()
查看该类继承了那些父类
- 方法解析顺序, Method Resolution Order
class master1(object): pass class apprentic1(master1): pass class stu(apprentic1): pass print(stu.__mro__) # 输出 # (<class '__main__.stu'>, <class '__main__.apprentic1'>, <class '__main__.master1'>, <class 'object'>)
单继承重写(修改)父类同名属性和方法后,如何再调用父类属性
# self在定义时需要定义,但是在调用时会自动传入。 # self的名字并不是规定死的,但是最好还是按照约定是用self # self总是指调用时的类的实例。 class master1(object): def __init__(self): self.konfu="古法制作" def make(self): print(f'{self.konfu}美味豆腐') # 验证单继承重定义修改父类同名属性和方法 class apprentic1(master1): def __init__(self): self.konfu = "最新独创法制作" def make(self): # 如果是先调用了了父类的属性和方法,父类属性会覆盖子类属性,故在调用属性前,先调用自己子类的初始化 # 加自己的初始化!!!! # 否则导致输出为古法 # 属性值是上一次调用的init调用的属性值,所以如果没有他就输出古法 self.__init__() print(f'{self.konfu}更美味可口豆腐') def makemaster(self): master1.__init__(self) master1.make(self) t1=apprentic1() # 对象访问实例修改的属性 print(t1.konfu) # 修改的方法实例 t1.make() # 如何通过t1调用父类没修过的方法 t1.makemaster() # 如果make不自己定义,仍会输出古法的了 t1.make()
这篇关于python继承的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-03用FastAPI掌握Python异步IO:轻松实现高并发网络请求处理
- 2025-01-02封装学习:Python面向对象编程基础教程
- 2024-12-28Python编程基础教程
- 2024-12-27Python编程入门指南
- 2024-12-27Python编程基础
- 2024-12-27Python编程基础教程
- 2024-12-27Python编程基础指南
- 2024-12-24Python编程入门指南
- 2024-12-24Python编程基础入门
- 2024-12-24Python编程基础:变量与数据类型