## 类的继承、派生、覆盖、super()
```python
类的继承:
子类继承父类,只需要在定义类的时候在类名后面加上(父类名)。
继承之后,父类的属性方法、子类都可以访问
派生:
子类继承父类后,自己在父类的基础上,又添加了一些属于自己特性的属性、方法
覆盖:
子类继承父类后,父类的有些属性、方法不能满足自己要求,子类就创建同名的方 法、属性,但是其值和父类不同,这样再访问同名属性、方法的时候,优先访问自 己的,就把父类的属性方法给覆盖了
super():父类的方法、属性被子类覆盖或者其他原因,子类需要访问父类的内容。有 两种方法,第一:指名道姓父类名字,用点语法访问。
第二:用super()方法 点 父类的属性、方法
```
### 在python中,一切皆对象!int float list dict 模块 包。。。等等都是对象
## "__init__"初始化、绑定方法与非绑定方法:
```python
创建对象的过程也是实例化的过程
当修改某一个对象的属性、方法时,不会影响其他对象以及类
__init__方法:
执行时机:当实例化产生对象时,会自动执行该函数
会自动传入需要初始化的对象,初始化的对象的实参必须等于init中参数
初始化至少包含一个参数,用于表示对象本身!
该函数不允许有返回值
实例化对象时:
1,产生一个空对象(空的名称空间)
2,自动调用__init__方法,并把这个对象以及额外实参传入
例子:p=Person("赵敏",18)
绑定方法:
对象绑定方法:
类中的属性、方法都是默认绑定给对象的。即:对象调用时,会默认把对象作为第 一个参数传入给属性、方法,可以直接调用。当类调用时,跟普通函数一样,需要 把self这个参数也传入,否则报错:参数不够。
类绑定方法:@classmethod
在该方法前加@classmethod,即是类绑定方法!类绑定方法,主要是因为这个方法 需要类的信息。
类访问会把类名默认作为第一个参数自动传入。对象访问时,会把对象的类名作为 第一个参数默认传入。其他访问,要主动传入类名,否则报错。
静态绑定方法@staticmethod
不需要访问类、也不需要访问类。跟普通方法没什么区别。
```
Python Day24:类的继承、派生、覆盖、super()、绑定、非绑定方法
点赞
收藏