A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Bellriver   /  2016-4-27 23:39  /  11376 人查看  /  47 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


1.封装:

  封装是面向对象的特征之一,是对象和类概念的主要特性。封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。一旦定义了一个对象的特性,则有必要决定这些特性的可见性,即哪些特性对外部世界是可见的,哪些特性用于表示内部状态。在这个阶段定义对象的接口。通常,应禁止直接访问一个对象的实际表示,而应通过操作接口访问对象,这称为信息隐藏。事实上,信息隐藏是用户对封装性的认识,封装则为信息隐藏提供支持。封装保证了模块具有较好的独立性,使得程序维护修改较为容易。对应用程序的修改仅限于类的内部,因而可以将应用程序修改带来的影响减少到最低限度。
2.继承:  继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。这也体现了大自然中一般与特殊的关系。继承性很好的解决了软件的可重用性问题。比如说,所有的Windows应用程序都有一个窗口,它们可以看作都是从一个窗口类派生出来的。但是有的应用程序用于文字处理,有的应用程序用于绘图,这是由于派生出了不同的子类,各个子类添加了不同的特性。
3. 多态性:

  多态性是指允许不同类的对象对同一消息作出响应。比如同样的加法,把两个时间加在一起和把两个整数加在一起肯定完全不同。又比如,同样的选择编辑-粘贴操作,在字处理程序和绘图程序中有不同的效果。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。

面向对象程序设计具有许多优点:

1、开发时间短,效率高,可靠性高,所开发的程序更强壮。由于面向对象编程的可重用性,可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。

2、应用程序更易于维护、更新和升级。继承和封装使得应用程序的修改带来的影响更加局部化
回复 使用道具 举报
面向对象就是不要脸,遇到问题,不是直面问题      而是找对象去解决
比如数组排序  冒泡  什么的统统不用   直接找工具类
回复 使用道具 举报
没那么复杂,你平时思考问题就是面向对象的思想

面向对象.jpg (71.11 KB, 下载次数: 53)

面向对象.jpg

对象.jpg (101.99 KB, 下载次数: 61)

对象.jpg
回复 使用道具 举报
Erry 中级黑马 2016-4-30 14:55:10
24#
面向对象你可以理解为:你发出命令只要得到结果,不要过程!
回复 使用道具 举报
面向对象的思想更接近人的思想,把复杂的事情简单化,使我们从执行者变成指挥者。面向对象的特征是:封装,继承,动态。
回复 使用道具 举报
面向对象的思想就是描述现实生活
回复 使用道具 举报
面向对象的思想就是描述现实生活
面向对象的三大特点是,封装继承和多态
想要学会面向对象,最重要的感觉就是你把每个类都当成现实实物来思考
因为我们程序员的开发就是与实际生活挂钩
回复 使用道具 举报
         楼上的说的差不多  
         我自己简单的理解就是.
    类是对现实事物的描述 . 对象是将现实事物描述的实例化   
              这样就像东西在图纸上 , 做成了成品才能用
回复 使用道具 举报
对象的思想以后用着用着就知道了!
回复 使用道具 举报
这个光说可能你不理解 你往后面学 多敲点代码 水到渠成 豁然开朗 其实一点不难
回复 使用道具 举报
面向对象思想是一种解决问题的思想、方法。 举例:做饭。做饭简单来说主要步骤分为买菜和炒菜。 第一种实现方法:我去买菜,买回来,我炒菜。完成。 第二种方法,面向对象的方法:找个专门买菜的人(买菜员)去买菜,买回来以后,再找个专门炒菜的人(厨师)炒菜。完成。 看!第一种和第二种方法区别在哪里?第一种所有的事情都是你去做,第二种所有的事情都有专门的人去做,你负责指挥(调用)。 所谓面向对象编程思想,就是说,以后要是有什么事情去做的话,你不要上来就自己去干,所有事情都自己干,如果事情很复杂,那么过程将会很乱,没有条理。而应该怎么样呢?应该分工明确,分解这件事情,各司其职,当然这是要由你去分解,由你去创建对象,赋予他们职能。具体的活,再让他们去干(调用)。 java里面的这种思想是很好的,提高重用性,继承扩展。这很重要。继承:  继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。这也体现了大自然中一般与特殊的关系。继承性很好的解决了软件的可重用性问题。比如说,所有的Windows应用程序都有一个窗口,它们可以看作都是从一个窗口类派生出来的。但是有的应用程序用于文字处理,有的应用程序用于绘图,这是由于派生出了不同的子类,各个子类添加了不同的特性。  3.封装:    封装是面向对象的特征之一,是对象和类概念的主要特性。封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。一旦定义了一个对象的特性,则有必要决定这些特性的可见性,即哪些特性对外部世界是可见的,哪些特性用于表示内部状态。在这个阶段定义对象的接口。通常,应禁止直接访问一个对象的实际表示,而应通过操作接口访问对象,这称为信息隐藏。事实上,信息隐藏是用户对封装性的认识,封装则为信息隐藏提供支持。封装保证了模块具有较好的独立性,使得程序维护修改较为容易。对应用程序的修改仅限于类的内部,因而可以将应用程序修改带来的影响减少到最低限度。  4. 多态性:    多态性是指允许不同类的对象对同一消息作出响应。比如同样的加法,把两个时间加在一起和把两个整数加在一起肯定完全不同。又比如,同样的选择编辑-粘贴操作,在字处理程序和绘图程序中有不同的效果。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
回复 使用道具 举报
面向对象就是描述现实生活
面向对象的三大特点是封装,继承,和多态
我举个例子
  我们每一个人都是人类这个类的对象,
    封装就相当于把我们的信息都给私有了,比如女孩子的年龄,你是不会知道的
    继承就是你从你爸那里继承了DNA ,血型,毛发的颜色
    多态就是你在外面是老板的牛马,到了你爸妈家就成了皇帝
回复 使用道具 举报
向尧 发表于 2016-5-3 22:54
面向对象就是描述现实生活
面向对象的三大特点是封装,继承,和多态
我举个例子

讲的比较抽象
回复 使用道具 举报
面向对象,也就是把现实中的某种物体抽象成一个类,一个具体的物体就是类的实例,也就是对象,物体所含有的属性就是对象的属性,物体所含有的动作就是对象的方法。例如:把汽车抽象成一个类,那一辆具体的汽车就是这个类的一个实例(即对象),比如奥迪A6。面向对象的三大特点是继承、多态、封装。继承就是说,子类可以继承父类,子类继承父类后,就继承了父类的方法和属性,可以使用父类中非private的属性跟方法,并且一个子类只能继承一个父类,不能多继承,多态主要表现在方法的重载和重写中。封装,专业点就是信息隐藏,即隐藏对象内部对数据的操作细节,外部对象只能通过提供的特定的接口(方法)进行数据访问,也就是说用户是无需知道对象内部的细节(当然也无从知道),但可以通过该对象对外的提供的接口(方法)来访问该对象。
回复 使用道具 举报
面向对象是一种编程的思维模式,用这种思维模式来让计算机去处理现实中的各种事物
回复 使用道具 举报
lennycxy 来自手机 中级黑马 2016-5-5 08:49:09
36#
学Java必须懂的,我就不答了,楼上说得都不错
回复 使用道具 举报
面向对象举例:你可以自己做饭吃,也可以去饭店吃饭,去饭店就是面向对象。不需要你自己动手,交给别人来做就好。封装,继承,多态,对照老师的视屏或者代码多多的敲几遍
回复 使用道具 举报
Lis 中级黑马 2016-5-7 00:32:56
38#
说到面向对象不得不说面向过程,
回复 使用道具 举报
Lis 中级黑马 2016-5-7 00:52:42
39#
面向对象是相对面向过程而言,
面向对象和面向过程都是一种思想
面向过程强调的是功能行为
面向对象是将功能封装进对象,强调了具备功能的对象
面向对象思想的两大特点:
1,把复杂的事情简单化
2,角色从执行者变成了指挥者

举列子说明:
比如你去餐馆吃饭,吃饭就要点菜,所以你就会问服务员餐馆都有什么菜,然后开始点.
在这个过程中,服务员就是面相过程的因为服务员具备点菜的功能,而你就是指挥者,直接叫服务员点菜就行.
点完菜之后,服务员找到厨师,然后说把这几个菜做好了,在这个过程中,服务员的角色又发生了变化
因为厨师具备炒菜的功能,而服务员不具备,所以服务员成了指挥者,而厨师就成了具备炒菜功能的对象.

简单的说就是自己亲自做的事情就是面向过程,而你找某位具备某种功能的人来做就是面向对象,直接调用即可
求币!!
回复 使用道具 举报
我感觉面向对象就是谁能处理这个问题就直调用谁,不管他是怎么做到的。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马