面向对象之深入思考

一提到面向对象,多数人都能随口说出继承,封装,多态三个特点,但这几种特性具体有什么好处,有什么缺点,我想这些需要好好的捋一捋才好,形成一个系统的知识,以便达到见微知著的效果。

拿java语言来说吧。

继承:

1、主要是为了多态的实现,借助继承可以实现向上转型,利用多态的好处

2、继承是一种复用父类的方式,但不常用,一般不涉及第一个原因,采用组合的方式为好

封装:

1、将方法和成员变量封装在一起形成具有特定属性和行为的类,是实现面向对象编程中对象这一概念的基础

2、可以控制类内成员的访问权限,实现安全性的要求,该知道的知道,不该知道的不要知道

3、提高类的可重用性

4、提高类的内聚性,可以让一个类封装成只具有单一的功能

5、提高可维护性,封装可以隔离错误,可以使查找错误的粒度变小,易于调试和修改

多态:

1、多态通过继承或者实现接口实现

2、多态使程序更具扩展性

3、多态使程序代码的组织更清晰,更易维护

这只是三个特性基本的内容,要想体现和感受面向对象的强大,还要涉及接口,设计原则,设计模式等很多内容,需要在实践中摸索,总结,才能有更深的体会。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值