面向过程与面向对象的区别

面向过程与面向对象的区别一 区别简述面向过程 ProcedureOri 以过程为核心 强调事件的流程 顺序 如 C 语言 面向对象 ObjectOrient 以对象为核心 强调事件的角色 主体 如 C Java 二 案例小明起床上班这件事 从面向过程的角度看就是 1 起床 2 刷牙洗脸 3 开车上班 从面向对象的角度看就是 主人公 小明 拥有的财产 床 牙刷 车 小明可以做

一、区别简述

面向过程(Procedure Oriented):以过程为核心,强调事件的流程、顺序,如:C语言。

面向对象(Object Oriented):以对象为核心,强调事件的角色、主体,如:C++、Java。

二、案例

小明起床上班这件事;

从面向过程的角度看就是:1、起床;2、刷牙洗脸;3、开车上班。

从面向对象的角度看就是:主人公:小明;拥有的财产:床、牙刷、车;小明可以做什么:从床上站起来、刷牙、开车。

代码讲解面向过程:

第一步:getUp(){dosomething};

第二步:wash(){dosomething};

第三步:drive(){dosomething};

代码讲解面向对象:

function Person(bed,toothbruth,car){ this.bed=bed; this.toothbruth=toothbruth; this.car=car; this.work=function(){ getUp(); wash(); drive(); } }; var xiaoMing=new Person('席梦思','黑人','宝马');xiaoming.work();

三、通过分析以上案例来具体看两者区别

面向过程:通过分别调用getUp()、wash()、drive()来完成一件事,每一步都是一个过程,整个过程循环渐进。

优点:根据事情的目的分解出过程,然后一步步实施;对于不复杂的事件执行效率快

缺点只关注眼前事件的实现

面向对象:先定义一个类别Person,列出属于该类别的属性及功能,new出一个实例xiaoMing,调用实例的方法work,在调用实例的方法中大家可以看到其内部也是一种面向过程的实现,所以面向对象与面向过程并不是互斥的,面向对象内可以有面向过程的设计。

优点:不仅关注眼前的事件实现,也关注未来可能发生的事件,比如要实现‘小明开发送朋友’。只需要在Person类里面加入sendFriend方法就可以。具有高度的拓展性(体现出对象的多态性)和复用性(对于类似的人,动作,直接new一个对象传入不同的参数即可),特点是继承、封装、多肽

缺点:跟面向过程正好相反,如果只是单一的功能实现,面向对象的设计思路就显得过于繁琐

面向过程与面向对象的区别

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/214080.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午5:01
下一篇 2026年3月18日 下午5:02


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号