黑马程序员技术交流社区

标题: 面向对象问题 [打印本页]

作者: fxing    时间: 2015-1-4 09:19
标题: 面向对象问题
面向对象谁能说的更形象店,视频的例子不好理解
作者: lhyzxc0205    时间: 2015-1-4 10:03
面向对象,相对于面向过程而言(完成一件事情先做什么,在做什么...),面向对象就是做什么事情找能做这件事情的事物就行,而不用关心该事物怎么做。比如你生病了,医生能治病,他怎么检查,怎么开药,你不用关系,医生有他自己的能力(功能或行为)。医院(对象)能治病,那些是擅长的,哪些是普通的(功能),医生是医院的一份子(属性),医生又是一个单个的的对象,医生所用的医疗器材(属性),医疗器材能做什么事情(功能)。就这样,对象封装了部分事物,又对外开放一些功能(供外部使用)。就java语言而言,io,集合,数组都是对象,对象下的属性又是对象,每个对象(抽象为类)都能解决问题(方法)。
作者: limxing    时间: 2015-1-4 10:09
lhyzxc0205 发表于 2015-1-4 10:03
面向对象,相对于面向过程而言(完成一件事情先做什么,在做什么...),面向对象就是做什么事情找能做这件 ...

层主 你会把他搞晕的
作者: lhyzxc0205    时间: 2015-1-4 10:15
limxing 发表于 2015-1-4 10:09
层主 你会把他搞晕的

一句话,万物皆对象。就具体的领域分析,将事物抽象(类),能具体话的事物就是对象,对象具有相关特征,功能(能做什么事情)。特征又或许是某个对象
作者: 446111220    时间: 2015-1-4 10:24
我对面向对象的个人理解啊,听不懂了没办法,面向对象是相对于面向过程的,他只不过是把多个面向过程进行包装,封装成了对象,而我们就不再需要再用过多的代码调用面向过程,而是直接通过调用这个对象去完成相对应的过程。比如啊,咱们人自己,我们吃饭是为了什么,得到能量,而我们还需要知道自己是怎么消化食物的???不需要,我们只需要把食物吃下肚子里,至于以后的事,那就交给胃,肝,肠的功能了,而我们自己个人就是一个对象,我们内部的消化食物的方法就是过程,你不需要知道过程,我们只需要调用我们吃的方法就行,不知道理解的对不对,希望大神再指点指点。谢谢
作者: 叫我小强    时间: 2015-1-4 10:44
面向对象我感觉就是,找人做你不愿意做的事,比如说你不愿意洗衣服、做饭等,你可以找一个有这些功能的人来帮你完成。面向过程的话,就是要你自己来完成这些事情,而面向对象,只需要你调用他们的洗衣服、做饭的功能就可以了。你从一个执行者的位置变成了指挥者了。
作者: 碎流    时间: 2015-1-5 16:14
这个事物,能做什么?有什么用就是这个事物的行为,如何描述它就是这个事物的属性.
作者: 我为你着迷    时间: 2015-1-5 16:34
446111220 发表于 2015-1-4 10:24
我对面向对象的个人理解啊,听不懂了没办法,面向对象是相对于面向过程的,他只不过是把多个面向过程进行包 ...

这个很经典啊 人和肚子里边的肝肠胃。而人对肝肠胃进行了对象的封装 。哈哈 不错 很形象
作者: 赵涛涛    时间: 2015-1-5 22:28
面向过程:面向过程是以函数(方法)为基础,完成各种操作。强调的是过程。
面向对象:面向对象是以对象为基础,完成各种操作。强调的是对象,结果。

作者: 郝明明    时间: 2015-1-5 22:32
真想不出更简单的例子了,建议你将C语音和JAVA对比着来 ,有助于理解
作者: IcedCoffee    时间: 2015-1-5 23:13
我的理解是对象是一个名词 但是这个名词可以被指导或者做出一个动作 视频里的门是名词 它被打开 忽略掉开门的过程 我只看门的时候 我只调用门这个名词 是我面向了门这个对象 然后他返回给我的结果 就是开了 开门的这个动作 就是所谓的过程 但是我调用的不是开门 而是那个名词门 所以门是被人调用的对象 人调用了门作为对象实现了开门的动作  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2