永发信息网

面向对象程序设计与过程化程序设计有什么本质区别?

答案:1  悬赏:10  手机版
解决时间 2021-01-04 02:40
  • 提问者网友:情歌越听越心酸
  • 2021-01-03 21:17
面向对象程序设计与过程化程序设计有什么本质区别?
最佳答案
  • 五星知识达人网友:大漠
  • 2021-01-03 22:10
本质区别,面向过程基本上是一种状态机,不利于修改,当新状态出现的时候,甚至可能需要重设每一个状态解决实现,换句话说,新需求的出现需要改变多少现有代码,完全取决于事先对状态机的预留功能的考虑有多周全。
面向对象则很好的回避了状态机的问题,实现了对新需求的良好支持,因为封装特性,一个类新添加什么方法,跟原有的方法并不会有什么冲突,更加不会影响到调用本类和本类调用的代码块,多态则是很好的应对了变化的需求,继承则是可以更好的利用原有的代码。
用的好的面向对象编程可以完全模拟面向过程的模式,利用静态方法和静态类就可以了,而面向对象本身的三个基本特性就是解决了面向过程在大规模开发中的不足而存在的,即封装、多态、继承,简单的说封装是为了尽可能对类外部隐藏数据,以免有被外部污染的可能;多态是为了以不同的方式、不同的类来实现一个公共接口(行为)的能力,这完全模拟显示世界比如同样是猫科动物的狮子和猫,都能叫,能叫就是同样继承自猫科的行为能力,叫声就是具体的行为实现 ,两个类对同一个方法的不同实现就是多态的一种主要形式。继承则是为了能够重复利用现有的方法实现,类中已经定义好的存储结构。
面向对象用的好可以比面向过程更好的组织实际的方法实现和存储结构。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯