大家好,欢迎来到IT知识分享网。
面向过程和面向对象区别
我们都常听到软件设计思想有面向对象和面向过程。那么什么是面向对象、什么是面向过程呢?
接下来我举个例子说明一下他们两者的区别。
有一天你想吃鱼香肉丝,怎么办,有两个选择。
第一:自己买鱼、肉丝、调料、胡萝卜等其他配菜,然后洗菜,开炒,装盘。
第二:去饭店,“老板,给我来一份鱼香肉丝”。
那么这两种有什么区别呢?很显然,第一种是面向过程思想,第二种是面向对象思想。
面向对象有什么优势呢?
首先不需要知道鱼香肉丝是怎么做的,降低了耦合性,如果有一天不喜欢吃鱼香肉丝了,喜欢吃番茄炒蛋的话,对于一来说,有点难了,需要从新买菜。对于第二来说,好,马上换就可以了。提高了可维护性,总的来说,降低了耦合度,提高了可维护性。
面向对象是具体化的,流程化的,解决一个问题,需要一步一步分析,一步一步实现。
面向对象是模型化的,只要出现出一个类,密封好,等需要用的时候直接用就可以了,不需要要一步一步实现。
面向过程优点和缺点:
优点:性能比面向对象好,因为类调用时需要实例化,开销比较大,比较浪费资源。
缺点:不易维护、不易复用、不易扩展
面向对象优点和缺点:
优点:易维护、易复用、易扩展、面向对象有封装、继承、多态的特征,可以设计出低耦合的系统,使系统更加灵活、易于维护。
缺点:性能比面向过程差
二、面向对象三大特征:封装、继承、多态
1、封装
所谓的封装,就是把客观的事物封装成抽象类,例如把密某个人需要做某件事,我们把某个人看成一个类,把他需要用的工具带在身上,他用到的方法装在脑子里,我不管他是怎么完成这件事的,他只要给我返回这件事的结构就可以了,不需要关心这件事怎么做,这就是封装。
2、继承
继承有这样一种能力,就是使用现有允许使用的功能。并不需要重新编写这些类已经有的功能。通过继承创建了新的类成为子类或派生类。被继承的成为基类。继承有两种,一种是实现继承,另一种是接口继承。
实现继承:可以直接使用基类的属性和方法,无需额外编码。
接口继承:是指使用属性和方法的名称,但是子类必须提供实现的能力。
2、多态
所谓的多态就是对一个实例的相同方法在不同的情况下有不同表现形式。多态机制使得不同内部结构的对象可以共享相同的外部接口。这意味着,虽然不同类的内部操作不同,但是可以通过一个公共类,他们可以通过相同的方法给与调用。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/15928.html