面向对象
1. 类:具有相同属性和技能的一类事物
对象:具体类的表现,实实在在的一个实例
人是一类,姚明是一个对象
狗是一类,我家养的旺财是一个对象
属性又叫静态变量静态字段,方法又叫动态变量
2. 类名.__dict__ 查看类中所有内容(不能进行增删改操作)
类名. 增删改查都可以
3.
1 # 类名+()产生一个实例(实例空间,对象空间) 2 # 自动执行__init__方法(构造方法),将对象空间传给__init__的self参数 3 # 给对象封装相应的属性
4. 
查询顺序:对象.属性:先从对象空间找,再从类空间找,再从父类找......
类名.属性:先从本类中找,再从父类中找.....
5.组合:给一个类的对象封装一个属性,这个属性是另一类的对象
面向对象三大特征:继承,多态,封装
6.继承:只执行父类方法:自雷不要定义与父类同名方法
既要执行子类方法,又要执行父类同名方法:利用父类类名调用父类__init__方法&或者super方法super().__init__(除self以外父类需要的参数)
单继承:新式类,经典类查询顺序一样,从本类开始往前找
多继承/钻石继承(python独有):新式类遵循广度优先,经典类遵循深度优先(只限继承两个类)

类名.mro()可以查询类的继承顺序
经典类:不继承object类都是,py2中所有类都默认不继承object
新式类:凡是继承object类都是,在py3中都是新式类,默认继承object(class A: == class A(object))
7.抽象类,接口类:制定一个规范
python没有接口这个概念
归一化接口设计


浙公网安备 33010602011771号