一.面向对象的三大特征
封装,继承,多态
二.定义类的总结
1- 类的命名:大驼峰命名法,所有单词首字母都大写
2-所有类的顶级父类,默认是object,可写可不写
三.魔法方法总结
1-常用__init__,__str__,__del__
2-命名前后都需要有下划线
3-__init__:对类的实例对象进行初始化操作,或者对一些公共资源进行初始化,例如:文件打开,数据库的连接.
4-__str__:一般用来对类的实例对象进行格式化输出,返回值类型必须是string.打印对象,默认打印的是内存地址值.
5-__del__:在实例对象被删除(通过del)或者被自动销毁(程序运行结束)的时候会调用,一般是用来释放资源.
四.关键字总结
1-self关键字:它代表是对应的实例对象,不需要手动传值,由python解释器进行赋值
2-cls关键字:在类方法中出现的,它代表的是类
五.封装总结
1-我们进行类的定义,方法的定义,这些操作,都称之为封装
2-封装里面的私有权限,用来对外部屏蔽类内部的底层细节,不对外暴露
3-分为私有属性和私有权限,命名的时候再前面使用__,用来表示私有
4-私有属性和方法,正常只能在类的内部访问
5-私有属性和方法,可以通过保留在类的外部访问,也就是实例对象._类名__私有属性和方法
六.继承总结
1-继承:子类从父类中获得相关的方法和属性,该过程称之为继承,不能继承私有属性和方法
2-继承分类:单继承,多继承,多层继承
3-继承之后,子类可以重写父类的方法.一般在什么情况下会重写?子类需要加强或者改造方法的时候
4-在子类方法中,调用父类的方法,可以通过如下三种方式:
4.1 父类类名.方法名(self,实参1,实参2...)
4.2 super(父类类名,self).方法名(实参1,实参2...)
4.2 super().方法名(实参1,实参2...)
5-多继承的顺序关系
class A:
class B(A):
class C(A):
class D(B,C)
上面代码的继承关系:[从D的角度出发],D>B>C>A
七.多态总结
1-多态的含义:多态就是让不同的对象对同一方法有不同的表现
八.类中的方法总结
1-分类:实例方法,类方法,静态方法
2-实例方法:所有实例对象都能够调用的方法
3-类方法:
3.1-@classmethod的装饰器
3.2-调用的时候,推荐使用类名进行调用,不推荐使用实例对象名进行调用
3.3-类方法里面只能操作类属性
4-静态方法
4.1-@staticmethod的装饰器
4.2-调用的时候,推荐使用类名进行调用,不推荐使用实例对象名进行调用
4.3-静态方法里面不能操作任何类型的属性