面向对象:
1. 继承
是面向对象三大特性之一
- 通过继承我们可以使一个类获取到其他类中的属性和方法
- 在定义类时,可以在类名后的括号中指定当前类的父类(超类、基类、super)
- 子类(衍生类)可以直接继承父类中的所有的属性和方法
2.继承的优势:
1).避免写大量重复代码
2).严格遵守软件的OCP开发思想
3).继承在程序员开发过程里面更加很好地维护软件功能模块
4).后续企业如果进行’二次开发’,完全可以利用继承将代码利用起来
3.什么是重写?
Override 在子类中如果有和父类同名的方法,通过子类实例去调用方法时,会调用子类的方法而不是父类的方法,这个特点我们成为叫做方法的重写
①重写必须发生在子类和父类之间的关系
②子类可以调用父类的方法(包括方法的参数、参数类型-python不指定参数类型、参数个数)
③子类完全可以定义自己的独特方法—简称为扩展方法
4.继承:issubclass()检查一个类是否是另一个类的子类
通过super()返回对象调用父类方法时,不需要传递self
在Python中是支持多重继承的,也就是我们可以为一个类同时指定多个父类
①可以在类名的()后边添加多个类,来实现多重继承
②多重继承,会使子类同时拥有多个父类,并且会获取到所有父类中的方法
③在开发中没有特殊的情况,应该尽量避免使用多重继承,因为多重继承会让代码过于复杂
④如果多个父类中有同名的方法,则会现在第一个父类中寻找,然后找第二个,再找第三个…
⑤前边父类的方法会覆盖后边父类的方法