面向对象的概述
来源:互联网 发布:唐望 知乎 编辑:程序博客网 时间:2024/06/06 03:50
什么是面向对象?
面向对象
我们先理解一下面向对象的思想
- 面向对象是相对于面向过程而已
- 面向对象和面向过程都是一种思想
- 面向过程
- 强调的是功能行为
- 面向对象
- 讲功能封装进对象,强调具备了功能的对象
- 面向对象是基于面向过程的
这么说可能有点笼统,我们举个例子来说明
还记得那个故事吗,把大象放进冰箱里,这里分几步?
- 第一步:打开冰箱门
- 第二步:把大象放进去
- 第三步:关闭冰箱门
这个行为艺术,叫做过程,这个行为过程,我很强调过程,不管是大象还是小象,无所谓,打开,放进去,关上,这就是面向过程
而面向对象
只需要我们封装这个冰箱,那么那就有打开,存储,和关闭的功能,那么我们作用的就是冰箱这个对象了,我们直接面向他这样说,是不是有点空洞?
就拿买电脑来说吧,首先,你不懂电脑,你去电脑城买电脑,和大象装冰箱里一样,是什么步骤?咨询 砍价 ,谈妥了就那电脑走人,对吧,这就是面向过程的思想,而面向对象是:你有一个哥们,他懂电脑,什么都会,你只要带他去,就行,你这个哥们就是对象,在JAVA中,我们就是操作一个对象去完成各种各样的操作的,这就是面向对象的思想
作为比喻:你想个找女朋友,房间有100个人,排成一队。里面有男人也有女人。你的条件是20-25岁,没结婚的女人就行。面向对象,就是你可以随时说,男的先出去,房子里就只有女人了,20-25岁的留下。你就找出所有100人中全部符合条件的人。面向过程,就是你得一个一个的问,你是男人还是女人,你几岁了,不能跳过。大体上就是这样。面向对象,就是把同类问题打包了,随时调用面向过程,就是一步步执行,不能打乱执行先后。
从学习VB开始,就一直在说面向对象,面向对象。。!@¥@#%¥@!。。说了多少遍,在软工之前,也一直没有接触到一个明确的定义。
在软件工程中,Coad和Yourdon给出了一个定义:
面向对象=对象+类+继承+通信
如果一个软件系统是使用这样4个概念设计和实现的,则我们认为这个软件系统是面向对象的。
如图,对象a为类a的一个实例,类a没有方法b,但是如果某种程序设计语言支持多重继承的话,那么,对象a可以从对象b继承方法b,从而简化了代码。另外,对象和对象之间还存在着通信,消息是一个对象与另一个对象的通信单元。
对象(Object)是问题域或实现域中某些事物的一个抽象,它反映此事物在系统中需要保存的信息和发挥的作用;它是一组属性和有权对这些属性进行操作的一组服务的封装体。面向对象编程将数据和方法封装在一个整体(类)里面,通过定义一个类,将一系列具有相同抽象概念的事物的共同特性概括起来,并在类中定义对数据的处理方法。
0 0
- 面向对象的概述
- 面向对象的概述
- 面向对象的简单概述
- 面向对象的基本概述
- 面向对象的基本概述
- 面向对象的软件工程过程-概述
- 面向对象的三个基本特征概述
- C#之面向对象的概述
- PHP面向对象的程序设计(概述)
- PHP面向对象的一些基础概述
- php面向对象简单的概述
- JAVA面向对象-----this的概述
- JAVA面向对象-----接口的概述
- JAVA面向对象-----内部类的概述
- 面向对象的计算机思维概述
- 面向对象编程的基本概述
- Java面向对象概述
- 面向对象技术概述
- 实例讲解Highcharts图例
- 【Java并发编程】之七:使用synchronized获取互斥锁的几点说明 (r)
- Java版-九大排序算法
- POJ 1741 Tree(树的点分治、树形dp、男人八题)
- EditText的输入要求
- 面向对象的概述
- POJ 2115 C Looooops(拓展欧几里德)
- 条件变量用例--解锁与signal的顺序问题
- Android多个视频循环播放
- 知识管理的新模式
- HTML5 音频和视频(20160808-0008)
- 【Java并发编程】之八:多线程环境中安全使用集合API(含代码)(r)
- 中断程序
- 去除APP启动时的黑屏/白屏/等待时间/闪烁