黑马程序员技术交流社区

标题: 各抒己见,交流下大家对面向对象怎么看 [打印本页]

作者: 一席倾城    时间: 2013-12-13 12:31
标题: 各抒己见,交流下大家对面向对象怎么看
本帖最后由 一席倾城 于 2013-12-15 18:11 编辑

一千个读者一千个哈姆雷特,每个人学习面向对象都有自己不同的领悟,想了解大家对面向对象的砍伐,不要固执粘贴定义,交流下自己的理解

作者: 红鹰(Jake)    时间: 2013-12-13 12:59
先抢个沙发
我的理解:面向对象就是指针对我没要解决的问题写方法,离开这个对象之后就什么都不是了,同样对这个对象所做的所有方法都不影响到其他的对象。
可以增强代码的可读性、重复利用性,解决了代码的重写问题。
使代码更有安全性,对象中的属性只能通过对象去操作。
作者: 第六天魔王    时间: 2013-12-13 13:44
就相当于一个微波炉,你把东西(参数)放进去,经过处理后变成香喷喷的食物(返回值),你不需要知道微波炉怎么运转的,你只要准备原料就行。(这是封装)而且这个微波炉你可以用,给了别人别人也可以用,别人说不定按照这个微波炉制造了第二个微波炉,同时这第二个微波炉还新增了调节火力大小的功能(这是继承),你把方便面装进去拿出来的时候变成了煮方便面,把玉米放进去拿出来的是煮玉米,原料不同拿出来的结果也不同,但都是微波炉做出来的。(这是多态)
作者: 〆、单曲循环    时间: 2013-12-13 15:54
大概就是自定义数据类型吧,数据类型可以有属于自己的属性 方法 事件  不管是自己定义的还是继承与别人的
作者: 一席倾城    时间: 2013-12-13 18:15
第六天魔王 发表于 2013-12-13 13:44
就相当于一个微波炉,你把东西(参数)放进去,经过处理后变成香喷喷的食物(返回值),你不需要知道微波炉 ...

形象生动,很赞
作者: 茹化肖    时间: 2013-12-13 19:07
第六天魔王 发表于 2013-12-13 13:44
就相当于一个微波炉,你把东西(参数)放进去,经过处理后变成香喷喷的食物(返回值),你不需要知道微波炉 ...

人家问的是对象、
作者: 茹化肖    时间: 2013-12-13 19:11
对象。首先你得知道什么类到底是怎么样一个概念。天地万物,我们都可以抽象为类。比如 房子 ,车,飞机,人、等等 都是类。但是呢,房子中有别墅,四合院,平方,瓦房 等等的不同,但是还是房子啊 ?所以是由房子 这个类所产生的对象。人 是类,男人 女人  老人 小孩  你  我 他 这些都是人的对象。我们把这个概念实现 就是相当于 给类对象实例化。。。。。。后面省略一万字。
作者: 许庭洲    时间: 2013-12-13 19:26
1. 对象: 一辆汽车
2. 类: 比如每一辆汽车是一个对象的话,所有的汽车可以作为一个摸板,就定义汽车这个类;
3. 继承: 汽车作为一个类已经存在, 作为具有自身特征的卡车就可以从汽车类中继承。
作者: 第六天魔王    时间: 2013-12-14 00:12
茹化肖 发表于 2013-12-13 19:07
人家问的是对象、

原来如此,我闪
作者: 如远行客    时间: 2013-12-15 13:58
我的了解:面向对象这种思想就是以对象为中心,属性,方法和事件等都是以对象存在为前提,也就是说,如果没有对象了,这些东西也就不存在了,所以,面向对象的代码是模块化的,即一段代码完成一个小的功能,这些功能又是对象所具有的,也就是通过对象将一些联系不大或者没有联系的代码组合关联起来,这些关联起来的功能块代码形成对对象的完整的描述。
作者: 岁月渲染    时间: 2013-12-15 16:58
面向对象就是对项目上来说一种思维方式,对一个项目的编程整体抽象出几个或多个类,再根据这些类编写该项目的程序的过程,但是这个过程必须用到类和对象,类就是对相似事物的抽象,比如就是车类 、人类、动物类等等,而对象就是类的实例化,比类更具体。例如车类中的(我眼前的黑色奥迪A8)就可以称为车类的一个对象。同时也设计到了封装、继承、多态。。。。。。。。。
作者: 师弟    时间: 2013-12-15 17:31
我简单的理解,就是面向对象的语言为了模拟现实世界,把所有能见事物都当做对象处理。
作者: 情祭    时间: 2013-12-21 19:06
我觉得把,面向对象是一种对现实世界的理解和抽象的方法,把我们现实生活中的一个个实体实例化成一个个类,然后把实体所具有的属性定义成方法,然后调用!简而言之,我觉得,面向对象就是一种思维方式。
作者: 好运不会眷顾傻    时间: 2013-12-21 19:35
我个人理解就是,假如你是面试的项目经理,我是来应聘的我对你说:“您就是在用面向对象的思想在思考问题,公司里面现在有项目需要人去开发,按照面试官您现在的技术功底,开发这个项目是没问题的
但是需要的工期非常的长,为了能在客户指定的工期内完成该项目,你需要招几个编程经验或者功能的人
而我就是具备该功能的对象,你就可以指挥我做这件事情,我怎么做的不重要,重要的是我能给你想要的结果”。

作者: panzhenglian    时间: 2013-12-21 19:41
我觉得面向对象的出现大大提高了团队合作的效率,把程序所有的功能分给每个程序员去完成,最后主程序只需要使用这个功能就可以了,

面向对象,功能集合起来,就如同生产线上,上级只需要调用下级员工的功能即可,不用安排繁琐的指令,




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