python中的方法没有重载,如果定义了多个重名的方法,只有最后一个有效。
两个下划线开头的属性是私有属性__,其余均为公开属性。
类内部可以访问私有方法和属性,类的外部不能直接访问,如需访问采用_类型__属性。
@property可以将一个方法的调用方式变成属性调用。
get、set方法是面向对象编程的重要工具,它是实现对象属性的设置和读取。
面向对象的三大特征:封装、继承、多态。
成员继承:子类继承了父类除构造方法之外的所有成员。
方法重写:子类可以重新定义父类中的方法,这样就会覆盖父类的方法。
可以用类方法mro()以及类属性__mro__来查看这个类的继承层次结构。
在子类中如果想获得父类的方法,可以通过super()来获得。
多态:同一个方法调用由于对象的不同可能会产生不同的行为。多态是属性的多态,方法没有多态。多态存在的两个必要条件:继承、方法重写。