python面向对象三大特性

python面向对象三大特性

封装

定义:封装一些数据和方法,只给外界提供必要的功能,掩盖细节,提高代码复用性和系统安全性。
数据角度:用一个类包装多个变量,还可以定义方法,操作数据
行为角度:不同程序员开发一个项目的不同功能,在使用时,直接调用,不需要思考其内部实现
设计角度:
(1)分而治之:拿到需求之后,分析需求,将需求拆解为不同的类来解决问题
(2)封装变化:找出所有可能变化的功能,使用类来单独定义
(3)高内聚:一个类只负责一件事
(4)低耦合:类与类之间的联系越少越好

自我理解:总的来说就是把属性,方法封装在类内部,直接对对象进行操作,不需要了解内部构造。
可以设置私有属性和只读属性来保护数据。

比如手机,电脑,只需要会使用,不用清楚内部构造和内部各部件运行原理

封装的大概样子

继承

重用现有类的功能与概念,并在此基础上扩展。
父类:在项目中,将几个类中,相同的操作拿出来,统一放在另一个类,在之前类中调用新类,来实现之前的功能,重用了现有类。
父类是子类的泛化
子类拥有父类的所有属性和方法
说明:
– 子类拥有父类所有成员.
– 子类如果没有构造函数,将自动执行父类的,但如果有构造函数将覆盖父类的。
此时必须通过super()函数调用父类的构造函数,以确保父类数据成员被正常创建。
在这里插入图片描述
比如父子,儿子继承了父亲的一部分特征,但是又有不相同的特征。

多态

以封装和继承为前提,不同的子类调用父类相同的方法显示不同的效果,就叫做多态
调用父类的一个方法,在不同的子类对象中,有不同得实现效果。
在这里插入图片描述
比如双胞胎,同父同母,但是在个体上还是会有差异

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值