码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA的面向对象思想

时间:2017-05-07 16:47:49      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:核心   构造   font   java   基础上   数据   难度   哪些   判断   

Java的面向对象思想如何树立

要知道Java面向对象的思想,那么我感觉应该对比着来学习。

首先我们要区分一下“基于对象”和“面向对象”的区别。

基于对象,通常指的是对数据的封装,以及提供一组方法对封装过的数据操作。就比如 C 的 IO 库中的 FILE * 就可以看成是基于对象的。

而面向对象呢,则在基于对象的基础上增加了多态性。多态就是可以用统一的方法对不同的对象进行同样的操作。当然,这些对象不能完全不同,而需要有一些共性,只有存在了这些共性才可能用同样的方法去操作它们。就比如A 和 B 在继承关系上都有共同的祖先 R ,那么我们就可以把 A 和 B 都用对待 R 的控制方法去控制它们。

 

其实这里面向还是有两个概念,面向过程和面向对象,这个可能就会很容易理解了

面向对象是相对面向过程说的。

简单来说,区别就是一个是make a dog bark,一个是a dog barks:

make bark(dog)

dog.bark()

 

面向对象的做法确实是把属性和功能封装起来,但是其核心是归类和抽象。

把相关的属性和功能集中起来,把可以分离的部分隔绝开来,从而把复杂的业务逻辑切割成互相 之间可以相对独立的部分,降低开发的难度。

所以面向对象绝对不仅仅是弄一个class然后把一堆东西往里面塞,真正重要的是判断需要构造 哪些class,它们之间的关联,以及把什么东西往哪一个里面塞。


还有一个更简单的例子

给你一个任务,你要思考怎么做。

如果你的思维方式是:我先做什么,再做什么……这叫面向过程

如果思维方式是:我先做一个什么东西来做这件事,再做一个什么东西来做那件事,然后它们怎 么相互配合……这叫面向对象


再通俗一点就是,面向对象是有个对象会给你做这件事,你只需要调用该对象就能完成这件事。而面向过程却是你得自己做。

JAVA的面向对象思想

标签:核心   构造   font   java   基础上   数据   难度   哪些   判断   

原文地址:http://www.cnblogs.com/huoxiansudi/p/6821166.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!