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

面向对象是一种 对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。
面向过程是一种以过程为中心的编程思想。
面向过程

面向对象面向过程
c++、java、python、c#…c …
以类为中心以函数为中心
对象=数据(数据类型)+行为(函数)

下面用通俗的例子来说明他们的区别。
以加用电器为例:
洗衣机:
功能上:洗衣服
外观:类型(滚筒波轮)
品牌 (小天鹅,海尔)
长,宽,高
型号

c语言的表述:
struct 洗衣机{
int nwidth;
int nheight;
int nlength;
int ntype;
int nbland;};

void 洗衣服(洗衣机,衣服)
{
}

洗衣机 海尔洗衣机;
洗衣服 (海尔洗衣机,脏衣服)

这样有一个缺陷,就是洗衣服与洗衣机的关联不强烈,洗衣机本身就有洗衣服的功能。这样的话倘若这样写
冰箱 海尔冰箱
洗衣服(海尔冰箱,脏衣服)

也是可以成立的。应该把洗衣机的功能放在洗衣机中。

c++语言的描述:
struct 洗衣机{
int nwidth;
int nheight;
int nlength;
int ntype;
int nbland;};

void 洗衣服(衣服);
洗衣机 海尔洗衣机;
海尔洗衣机.洗衣服(脏衣服);

此时
冰箱 海尔冰箱
海尔冰箱.洗衣服(脏衣服)

便不能执行了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值