标签:... over dir override 建议 准则 子类 位置 影响
面向对象三大特性:
面向对象三大特性:
class 类名(父类名): pass
当 父类 的方法实现不能满足子类需求时,可以对方法进行重写(override)
重写 父类方法有两种情况:
super().父类方法
来调用父类方法的执行代码;其他的位置针对子类的需求,编写 子类特有的代码实现。super
是一个 特殊的类super()
就是使用 super 类
创建出来的对象因为:调用父类方法的另外一种方式:在 Python 2.x 时,如果需要调用父类的方法,还可以使用以下方式:父类名.方法(self)
。目前在 Python 3.x 还支持这种方式,但不推荐使用,因为一旦 父类发生变化,方法调用位置的 类名 同样需要修改。
子类对象 不能 在自己的方法内部,直接 访问 父类的 私有属性 或 私有方法
子类对象 可以通过 父类 的 公有方法 间接 访问到 私有属性 或 私有方法
- 私有属性、方法 是对象的隐私,不对外公开,外界 以及 子类 都不能直接访问
- 私有属性、方法 通常用于做一些内部的事情
子类 可以拥有 多个父类,并且具有 所有父类 的 属性 和 方法,例如:孩子 会继承自己 父亲 和 母亲 的 特性。
class 子类名(父类名1, 父类名2...): pass
object
为基类的类,推荐使用object
为基类的类,不推荐使用class 类名(object):
pass
object
是 Python 为所有对象提供的 基类,提供有一些内置的属性和方法,可以使用dir(object)
函数查看。
面向对象三大特性:
多态 更容易编写出出通用的代码,做出通用的编程,以适应需求的不断变化!
标签:... over dir override 建议 准则 子类 位置 影响
原文地址:https://www.cnblogs.com/guo2733/p/10749292.html