java之知识之一:面向过程和面向对象的区别

查看了很多文献,了解面向过程和面向对象的联系和区别,这里总结一下我对其对认知和理解,不足之处还望指正.

1. 面向过程

        所谓面向过程,通俗而论其实指的就是“实现功能的一个顺序、流程或者是事物执行的一个动作流”.

        比如: 汽车启动,汽车到站这一功能,如果用面相过程这一思想去设计,我们关注的就是启动,和到站两个执行动作的顺序流程而不会关注“车”这个实物本身.

        又比如: 我们乘车:需要在车站等车->上车买票->找座位->到站出示车票->下车. 用面相过程的思想我们关注就是乘车、下车顺序流程一个过程,而不是具体的人、车、票

所以概括而论:面相对象就是将功能按照指自上而下顺序实现,然后细化调用的过程.关注的重点是过程,提供的属性就是封装(就是把各个功能封装成方法用来实现功能)

2. 面相对象

        比如: 上述提供的汽车启动,汽车到站这一功能,如果用面相对象这一实现去设计,我们关注的是: “汽车” 这一实体,继而通过“汽车”这一实体去设计其属性和方法.

      所以从这一思想而论,面相对象其实就是分析参与实现的功能的具体实体,并且这些实体都有哪些属性和方法,进而实现它.

      面相对象通常提供的方法: 封装、继承、多态.

3. 区别与联系

  1. 无论面相对象还是面相过程,其实都是编程设计的一种思想,并不是具体的实现方法,只不过我们在编程时由于语言已经具有这一设计,所以我们容易忽略,或者我们在编程时也去使用了,但是由于已经成为习惯,进而容易忽略它
  2. 如果我们设计的程序比较单一、简单我们可以选择面相过程的设计方式去完成,由于面相过程的简单单一,因而其性能反而要比面相对象高
  3. 如果业务复杂,或大型企业设计,建议还是用面向对象的方式设计,具有解藕性,而且从复制、扩展及维护比面相过程要容易很多.
  4. 其实实际应用中,我们更多的是两者结合的使用颇多,比如我们在面相对象的设计中,我们也经常按顺序执行方法或者加载模块,因此两者又是相互依存的.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱丫爱

你的鼓励是我创作最大的动力来源

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值