Java是一个面向对象的语言,因此我们学习Java时就必须要有面向对象的思想,面向对象的思想在理论上是这么说的:
三大特性:继承性,封装性,多态性;我的理解是,在日常生活中我们碰到问题,比如说我们要去找工作,我们想到了可以51job网找,
其实这也是一种面向对象,因为对于找工作而言,51job里面有很多有用的信息和途径,我们没有必要自己去一个个的问,只要点点鼠标;
因为主要的消息和途径已经被51job这个对象给封装起来了,我们只要去找他就对了,因此可以这样说,学Java就是去找一个个的对象来用,比如说你要操作文件,有File,你要取某个数据的数据摘要,有MessageDigest,要取得某段数据的明文字符,可以找Base64,不一而足,因此我们只要掌握了Java基础,会去查API文档,或者说有了面向对象的思想,解决问题就能事半功倍,即使对象一时不存在,我们可以自己造一个;也就是一句话,要实现什么功能,去找对象,找不到自己造一个。那么对于具体的一些问题我们应该怎样去进行对象的封装呢?
示例:我们在黑板上画园。
这里有三个对象,人,黑板,圆,还有一个动作,画圆,那么这个画圆的动作应该是属于谁的呢?这里有一个判断的方法,就是说,数据是谁的,就属于谁。好比说,我们画圆,需要知道这个圆的半径和圆心,这个半径和圆心是属于圆的,因此这个画圆的方法就是圆的。
示例:人关门。
这里有两个对象,人,和门,以及一个动作,关门,那么这个关门这个动作是属于谁的呢?根据判断依据:数据是谁的方法就属于谁,很显然是门的,因为我们关门,是门在做一系列的动作,我们仅仅是推了一下门。换个思路,假设门坏了,那么你关不上面,是你的问题还是门的问题,很显然你是好好的,而门是坏的因此你关不上。所以这个关门的动作是门所具有的。
总结下:我们在之后的学习过程中,只要知道某个类能完成什么功能就可以了,甚至连类名都不用刻意去记忆,只要有个大概的印象就可以了,因为我们有api文档和开发工具的帮助,只要有面向对象的思想,问题就很容易解决。
![面向对象的分析与设计OOAD 面向对象的分析与设计OOAD](https://i-blog.csdnimg.cn/blog_migrate/a4c26d1e5885305701be709a3d33442f.gif)
![面向对象的分析与设计OOAD 面向对象的分析与设计OOAD](https://i-blog.csdnimg.cn/blog_migrate/a4c26d1e5885305701be709a3d33442f.gif)