论python基础10

继承: 在程序中,继承描述的是多个类之间的所属关系 #作用:简化代码,让子类使用父类的所有功能 子类可以使用父类的功能 父类不能使用子类的功能 父类:基类 子类:派生类 继承语法: 子类名(父类名) #子类可以直接使用父类功能 #子类可以直接使用父类的方法
多层继承: 子类可以使用自己任意一级父类的功能 #python3里没有写明父类 则默认继承object #经典类:在python2里没写明 父类 #新式类:但凡继承于object (python2里要写明继承object) 继承里的私有属性: 子类里不能使用私有属性.即子类不会继承父类 要想使用私有方法 就要调用父类里的
多继承: 多继承子类可以使用所有父类的功能 语法: 字类名(父类1,父类2....) MRO算法,python里专门处理获取父类方法顺序的算法 mro 确定了查找父类方法的顺序 如果多个父类中有同名的属性和方法,则默认使用第一个父类的属性和方法 多个父类中,不重名的属性和方法,不会有任何影响. 指定父类执行方法 父类名.方法名(对象) 逻辑工具: is a 代表继承关系,is前面的是子类 has a 代表属性关系,a 后面的是属性 子类重写父类的同名属性和方法: 子类和父类有同名方法 有被重写的方法 则调用的是子类方法 重写的价值:去除重复代码 作用:子类需要使用到父类的功能,但有些功能在子类里实现的不同,则就需要重写新的功能. 手动调用父类方法: 1.父类名.父类方法(self) 2.super() 帮我们自动找当前的子类的父类 super().init() --父类方法 #self也不需要写 解释器自动处理self #只能在python3里使用 3.super(子类名,子类对象).init()--父类方法 #self也不要写 #2 . 3 . 通用 调用父类方法时传参: 如果父类方法需要接受参数,则立在调用方法时要对应的传递实参
一般为保持数据可变,传递给父类方法的参数,也会在自来方法上定义一个 多态:
多态没有语法 是一种代码使用方式 具有安全性
面向对象三大特性: 封装 -------将属性和方法封装到一个抽象类中 继承 --------父类子类的继承 重写 多态 -------- 提高代码调用灵活度 #不同的子类对象调用相同的父类,产生不同的执行效果 1.继承.重写为前提 2.多态是调用方法的技巧,不会影响类的内部设计 只要是父类能够工作的地方,子类都能正常工作 不同的子类对象可以产生不同的执行效果 价值:提高了代码的灵活度 还具有安全性
实例属性和类属性: 实例对象-定义的类创建的对象 实例对象-属性彼此独立,互不干扰.
类对象-当解释器遇到class关键字时候,会自动的对象 类对象-一个类只有一个类对象
类属性:直接在类里定义,有所有的实例对象共享同一个 类属性的使用:类名.类属性 类对象可以访问类属性

猜你喜欢

转载自blog.csdn.net/dawukongdada/article/details/80038917