|
|
给自己定下了任务,要把这本经典的巨著看完,而且是要认真仔细的哦,其实面向对象的思想和观念我早就具有了,这要得益于去年学习C++时候打下的坚实的基础.
1,一切都要看做对象来处理.
2,整个系统就是一个由若干对象构成的通过消息传递机制来实现这些对象该做什么的.
3,同类对象可以接受相同的消息,也就是父类可以接受的消息子类一定可以接受到的.
4,对象有行为(方法),状态(属性),标识(表示对象名称的变量)的.每个对象在内存中
有唯一的地址.
5,对象可以看做是一种数据类型.
记得上次去成都面试的情形,当时主考官要我做一套题,当时那些题目对我来说也不难,但是主要是其中有些问题我平时在写程序的时候会注意到,但是要我写在纸上,让我把public,protected,private在面向对象编程中的作用写清楚,我心中窃喜,这个可真的难不倒我,其实对这些的概念我是有的,但是写模糊模糊,哪次面试的结果可想而知,最后回来总结,其实这些都是因为自己在学习知识的时候不太细心,也不扎实,所置,这个问题我一直也是刻意的在克服着,但是这次的碰壁让我也算是彻底的清醒了.
OOP的封装,继承,多态三大特性.
代码复用的问题.
类是一种对象模板.
类继承可以是对象具体化.
对象的创建,消亡,怎么存储的,怎么样控制其生命周期这些都是需要搞清楚的迷团
创建在称为堆的内存池
public abstract class Shape
{
public draw(); //绘制普通图形
}
public class Line extends Shape
{
public draw(); //绘制直线 实现了不同的行为
}
public class Retange extends Shape
{
public draw(); //绘制矩形 实现了不同的行为
}
派生类可以捕获所有基类的消息
把所有的派生类都可以看做是基类的特殊类别
void doStuff(Shape shape)
{
shape.draw(); //将根据不同的shape所属的类调用该 //类方法
}
Line line=new Line();
Retange retange=new retange();
doStuff(line); //line.doStuff()
doStuff(retange); //retange.doStuff()
异常处理,与多线程
Java 是一个更加纯粹的面向对象的语言
再次强调一切都是对象,甚至包括java程序本身
一个存在着的对象代表一个Reference,各种操作实际上都是对reference的操作.
reference只有在通过Constructor初始化后才能算是对象.
java的安全性,开发周期和,性能之间的抉择.
java中方法中参数的传递就是reference的传递,所以要保证类型的匹配。
程序就象是一堆带着方法的对象,而方法又都拿其他对象做为参数,并且向其他对象发送消息.
这几天把自己变的懒惰了许多,给自己定下的学习任务根本就没有怎么去完成,不要给自己找理由说感冒了,什么之类的,没有完成就是事实,不过我倒是感觉应该好好的去把Core Java 2 Volume I 和Core Java 2 Volume Ii这两本书扎实的看看,呵呵,又给自己定任务,到时候怎么完成真的好让人担心,呵呵
天气竟然真的开始变凉了,很想给家里打个电话提醒以下妈妈多注意加些衣服,但是自己感冒成了这个样子,都快跟死了一样,我怕到时候说话声音露馅,就干脆没有去打,还是等过几天吧,不过妈妈是很懂的这个的,我也不是怎么担心她老人家被冻着,只是这个已经成了我的一种习惯,天冷的时候就特别想妈妈和妹妹,也不知道怎么的!
昨天看了thinking in java III 的第二章,好象这个版本的中文翻译版本还没有全部完成,看到了static部分,总感觉static的设计特别精妙,你可以不用产生object而直接调用类方法.
对象的产生和清理都由系统来完成,不用象在c++程序中那样,这些动作都由程序员自己控制.
突然间觉得自己读电子书甚喜欢,而且乐此不彼,又想起了去年跟我的老板谈到电子书和纸介质的书籍的事情,呵呵
现在想想当时大家竟然为了一个那样没有半点深度的问题争论的个不亦乐乎
现在整个硬盘上down的电子书大概可以去开个书店了,但真的看过的实在是不敢恭维了.
java的应用大到航空航天器,各种高性能大型服务器,中型应用到桌面型App,小到各种掌上设备,各种移动通信设备的高级应用.
这就是我到目前对java在各个领域应用情况的大致了解.
整理了以下自己对java的掌握点,发现对以下几个地方还不是很清楚:接口,包,多线程
其实以上那些东西都是概念性的,主要还是对java api的掌握和应用
还有对整个平台结构的了解!
创建包和引用包,都是以分层的形式.同时也可以避免命名冲突,所以说包既是一种命名
机制也是一种可见度控制机制,当一个类被装入包中的时候,在以后对该类的引用都要考虑到包的因素,即通过包层次来引用该类!
接口则和抽象类相似,不过对一个具体的类而言,只能从一个基类继承,但是可以实现多个接口的!
接口可以理解为一个观察一个实体(Object)的角度,一个类可以实现多个接口(Interface),也就是说,对同一个实体可以从不同的角度去理解,观察;一个接口可以被多个类所实现,既是不同的实体可以从不同的角度去观察.
接口所包含的数据成员都是公有静态常量数据,而接口的成员方法则只能是公有的抽象方法!
[em2] [em2] |
|