什么是面向对象、面向过程与面向对象的区别

要讲区别,首先我们得先来弄弄清楚什么是面向过程,什么是面向对象。

面向过程是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。

比如把大象放进冰箱,第一步需要先打开冰箱,第二步把大象放进去,第三步把冰箱关上,这样就完成了把大象放进冰箱这件事情。这就是面向过程。

 

面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

还是把大象放进冰箱,我们得先有个冰箱,有个大象,冰箱可以开关,大象能够移动,这个时候我们再来做把大象放进冰箱这件事情。

 

这样看起来好像没什么区别呀,反倒是面向过程来的有条理一些,多方便呀。这只是再这件事情上显得简单而已,如果老板不是让你去放大象,而是让你去造火箭呢?造火箭可是个大工程,怎么造,从哪造,难道我们也面向过程那样一步步列出步骤吗?

因此,对于规模较小的问题,面向过程比较简单,而面向对象更加适用于解决规模较大的问题。

面向对象的程序单位是类,面向过程的程序单位是函数(方法)

 

细谈面向对象

面对对象编程的本质:以类的方式组织代码,以对象的方式组织数据

 

面向对象程序设计(OOP)需要清楚对象的三个主要特性:

1、对象的行为-----可以对对象施加哪些操作,或可以对对象施加哪些方法?

2、对象的状态-----当施加那些方法时,对象如何响应?

3、对象标识--------如何辨别具有相同行为与状态的不同对象?

 

封装、继承和多态是面向对象的三个基本特征。

封装:将数据和行为组合在一个包中,并对对象的使用者隐藏了数据的实现方式,是一个黑盒子。

(对象中的数据称为实例域,操作数据的行为称为方法。)

继承:通过扩展一个类来建立另外一个类的过程。大白话就是,子类继承父类后,直接获得父类的属性和方法

多态:子类对象可以直接赋给父类对象,运行时依然表现出子类的行为特征

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值