黑马程序员技术交流社区

标题: 如何学习JAVA中的面向对象? [打印本页]

作者: 周朝    时间: 2013-4-13 22:29
标题: 如何学习JAVA中的面向对象?
本帖最后由 周朝 于 2013-4-14 16:23 编辑

如何学习JAVA中的面向对象呢?

最近一直在面向对象这里徘徊,单个的比如:static,单例设计等,或许可以理解,但是一到综合应用,一点都不会,不知道该怎么写?
求高人指点.
作者: ①人←①城市    时间: 2013-4-13 22:57
多看多写,多查API,多想
作者: 周朝    时间: 2013-4-13 22:58
①人←①城市 发表于 2013-4-13 22:57
多看多写,多查API,多想

没有思想的话 也不会写啊~只会照抄
作者: 崔宝东    时间: 2013-4-13 23:27
面向对象是要自己理解封装,什么情况应该封装,继承呢,表示的是 一个事物是另一种 事物的关系,多态是通过继承来实现的,能理解这些,慢慢就会真正理解面向对象了
作者: 曹德君    时间: 2013-4-14 00:13
楼上的意见都不好。最好前面的全部忘记然后再看一遍。
作者: 段旭东    时间: 2013-4-14 01:47
首先还是 要硬记下来!其次就是 要有思想,你可以从生活中出发,把你用的你看的 都用面向对象的 思想模拟一下,很有用的!等你习惯了 编程的时候很自热俺就想多了 最主要的还是多做例子!
作者: 黄玉昆    时间: 2013-4-14 14:16
如果问题未解决,请继续追问,如果没有问题了,请将帖子分类 改为“已解决”,谢谢
作者: 易杰    时间: 2013-4-14 16:30
个人认为,从写代码的角度看,无论你实现什么功能或进行什么样的操作,都以对象基础。比如说你要对某个字符串进行操作,你就要获取这个字符串对象,然后调用字符串的方法,来完成操作。
static,是一个修饰符,用来修饰类中定义的属性(即各种类型的变量)和方法(也称函数)。被static修饰的属性和方法。可以通过类名.属性名或类名.方法名(参数)的方式来直接使用,不需创建对象,在通过对象的引用变量来使用。
单例模式,就是为了节约系统资源,保持一类始终只有一个对象。实现的方法就是,构造函数私有化,使对外界无法通过构造函数来创建对象。对外提供静态的方法来获取该类的实例对象,该静态方法给外界始终返回同一个对象。因此确保了一类始终只有一个对象。
作者: 易杰    时间: 2013-4-14 16:31
个人认为,从写代码的角度看,面向对象就是:无论你实现什么功能或进行什么样的操作,都以对象基础。比如说你要对某个字符串进行操作,你就要获取这个字符串对象,然后调用字符串的方法,来完成操作。
static,是一个修饰符,用来修饰类中定义的属性(即各种类型的变量)和方法(也称函数)。被static修饰的属性和方法。可以通过类名.属性名或类名.方法名(参数)的方式来直接使用,不需创建对象,在通过对象的引用变量来使用。
单例模式,就是为了节约系统资源,保持一类始终只有一个对象。实现的方法就是,构造函数私有化,使对外界无法通过构造函数来创建对象。对外提供静态的方法来获取该类的实例对象,该静态方法给外界始终返回同一个对象。因此确保了一类始终只有一个对象。
作者: askyle    时间: 2013-4-16 17:33
本帖最后由 askyle 于 2013-4-16 17:35 编辑

你可以先嘗試做個音樂播放器(類似酷狗播放器), 功能有前進 後退 播放 停止 排序(按長度、按名字、按歌手等) 然後就開始想如何把它連起!最後再想哪裡可以優化代碼,減少BUG等
作者: 刘永建    时间: 2013-4-16 18:27
你要学好面向对象的四个特征,一个一个来理解
1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。
2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。
3.封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。
4. 多态性:多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。




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