目录
面向对象的概念
面向对象是一种编程方式,需要靠“类”与“对象”来实现,所以说面向对象就是对“类”与“对象”的使用。
“类”与“对象”
类:
静态的属性–>对象所包含的属性。
方法–>对象的动态属性,详细的讲述了对象所执行的功能。
对象:
类的一个实实在在的案例、实例。
面向对象的三个特征
封装
表示将属性私有化,提供公开的方法来设置和访问的过程。
Python三种封装的写法:
1.常规写法
将属性私有–> __ + 属性名称
2.调用全局函数property,将set和get传递过去。
对象.属性名称
3.使用annotation(注解)property来二次封装。(注意:此处存在一个伪重载)
函数的重载(overload)
函数名称相同,参数的个数或类型不同。
Ps:Python没有函数重载,因为python弱数据类型语言。
继承(extend)
函数的重写、覆盖(override)
说的是面向对象的继承中,子类继承了父类的方法,但是不满足子类的需求,从而重新覆盖父类的方法的现象。
__ -->类似于Java private,表示除了类本身,其他的都不能访问
_ -->类似于java protected,表示除了本身,子类也允许访问
Ps:python中允许多继承
多态:
表示父类引用指向子类实例的现象。
一个对象可以拥有多个多态。
Ps:Python是弱数据语言,而弱数据类型语言天生支持多态