python继承类中如何重写?
2023-03-20 15:26:29 时间
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
1、重写的类别
(1)重写和父类的方法名称一样。但是在子类里面,重新实现。
(2)保留父类的做法,在它的基础上再扩展其它的内容。(扩展方式:super())
super()的2种表达:
super().方法(参数列表)
super(子类名,self).方法(参数列表)
2、重写实例
Animal 的子类Cat继承了父类的属性和方法,但是我们猫类 Cat 有自己的叫声 '喵喵' ,这时我们可以对父类的 Call() 方法进行重构。如下:
class Cat(Animal): def __init__(self, name, age, sex): super(Cat, self).__init__(name,age) self.sex = sex def call(self): print(self.name,'会“喵喵”叫') if __name__ == '__main__': c = Cat('喵喵', 2, '男') c.call() # 输出:喵喵 会“喵喵”叫
类方法的调用顺序,当我们在子类中重构父类的方法后,Cat子类的实例先会在自己的类 Cat 中查找该方法,当找不到该方法时才会去父类 Animal 中查找对应的方法。
为了方法的快速调用,我们会从父类那里继承方法,放在子类的使用上。但这样也会产生一种问题,子类全部显示的是父类的类别,而没有自身特性进行区分。这时候方法的重写就很有必要了。
以上就是python继承类中重写的方法,在遇到子类不能区分的问题时,大家就可以通过重写方法来辨别啦。学会后快试试重写的使用吧。
相关文章
- 用 Python 快速找到最大的文件
- Python 函数那不为人知的一面
- 不可思议,Python 的链式操作竟然可以这样
- windows命令执行防御规避总结
- Python 标准库解读.1(对应MicroPython)
- Sony远程控制API文档中文版(小张bb版)
- 内核级python:编译器的词法和语法解析基本原理
- 通过内置对象理解 Python(三)
- Python 中的迭代器
- python与分形0007 - 彩虹斗笠
- 项目开发神器 VSCode 配置指南!(含 C++、Python、Java 环境配置)
- 手把手教你使用Python网络爬虫实现邮件定时发送(附源码)
- 代码覆盖率VS测试覆盖率
- 深入挖掘React中的state
- 前端运维之Shell基础
- 献礼最强API阵营,swagger2Api利器,不可拒绝
- Vibro-meter VM600 XMC16燃烧状态监控模块
- RAP2-DELOS 开源社区版本 (后端 API 服务器)
- .mat文件转到Python中处理
- ES6之Generator