上一页 1 2 3 4 5 6 7 8 9 ··· 43 下一页
摘要: 1、抛出异常之后1).使用new在对象上创建异常对象2).终止当前的执行路径3).从当前环境中弹出对异常对象的引用4).异常处理机制接管程序,并开始执行异常处理机制2、异常处理理论上有两种基本模型1).终止模型:一旦异常抛出,就表明错误无法挽回,也能回来继续执行。比较实用。2).恢复模型:异常处理之后继续执行程序。但是可能导致“耦合”。3、自定异常类(具有带参数的构造器)class SimpleException extends Exception{ public SimpleException(){} public SimpleException(String msg){ ... 阅读全文
posted @ 2012-01-30 17:20 我的IT技术 阅读(339) 评论(0) 推荐(0) 编辑
摘要: 上接《Java编程思想》之为什么需要内部类?public abstract class Event{ private long eventTime; protected final long delayTime; public Event(long delayTime){ this.delayTime = delayTime; start(); } public void start(){ eventTime = System.currentTimeMillis() + delayTime; } public boo... 阅读全文
posted @ 2012-01-29 19:54 我的IT技术 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 上接《Java编程思想》之内部类——深奥而复杂13、为什么需要内部类?1).内部类最吸引人注意的原因是:每个内部类都能独立的继承自一个(接口的)实现,所以无论外围类是否已经继承了某个就(接口的)实现,对于内部类都没有影响。2).一个类中以某种方式实现两个接口。由于接口的灵活性,你有两种选择:使用单一类,或者使用内部类。从实现观点看,以下俩种方式没什么区别。interface A{} interface B{} class X implements A, B{} class Y implements A{ B makeB(){ return new B(){ ... 阅读全文
posted @ 2012-01-29 19:45 我的IT技术 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 1、当将内部类向上转型为其基类,尤其是转型为一个接口的时候,内部类就有了用武之地(从实现某个接口的对象,得到对此接口的引用,与向上转型为这个对象的基类,实质上效果是一样得。)这是因为此内部类——某个接口的实现——对于其他人来说能够完全不可见,并且不可用。所得到的只是指向基类或接口的引用,所以能够很方便地隐藏实现细节。interface Destination{ String readLabel(); } interface Contents{ int value(); } class Parce1{ private class PContents implements Con... 阅读全文
posted @ 2012-01-29 19:23 我的IT技术 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 1、interface不仅仅只是一个极度抽象的类,因为它允许人们通过创建一个能够被向上转型为多种基类型的类,来实现某种类似C++多重继承变种的特性。2、像类一样,可以在interface关键字前面添加public关键字(但仅限于该接口在与其同名的文件中被定义),或者不添加它而使其只是具有包访问权限,这样它就只能在同一个包内可用。3、可以选择在接口中显示地将方法声明为public的,但即使你不这么做,它们也是public的。因此当实现一个接口时,在接口中被定义的方法必须被定义为public。4、Java中,在方法的继承过程中,其可访问权限不能被降低。5、接口也可以包含字段,但是它们隐式为stat 阅读全文
posted @ 2012-01-27 19:21 我的IT技术 阅读(1587) 评论(0) 推荐(1) 编辑
摘要: 1.在面向对象的程序设计语言中,多态是继承数据抽象和继承之后的第三基本特征。2.“封装”通过合并特征和行为来创建新的数据类型。3.“实现隐藏”则通过将细节“私有化”,把接口和实现分离开来。4.多态的作用则是消除类型之间的耦合关系。5.耦合就是指两个或两个以上的实体相互依赖于对方的一个量度。6.多态也称作动态绑定、后期绑定或运行时绑定。7.将一个方法调用同一个方法主体关联起来被称作“绑定”。8.“前期绑定”:程序执行前进行的绑定,由编译器和连接程序实现。面向对象的语言不需要选择就默认的绑定方式。9.Java中除了static方法和final方法(private方法属于final方法)之外,其它所 阅读全文
posted @ 2012-01-26 21:32 我的IT技术 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 控制对成员的访问权限有两个原因: 第一是为了使用户不要碰触那些他们不该碰触的部分,这些部分对于类内部的操作是必要的,但是它井不属于客户端程序员所需接口的一部分。因此,将方法和域指定成private,对客户端程序员而言是一种服务。因为这样他们可以很清楚地看到什么对他们重要,什么是他们可以忽略的。这样简化了他们对类的理解。 第二个原因,也是最重要的原因,是为了让类库设计者可以更改类的内部工作方式,而不必担心这样会对客户端程序员产生重大的影响。例如,最初可能会以某种方式创建一个类,然后发现如果更改程序结构,可以大大提高运行速度。 如果接口和实现可以被明确地隔离和加以保护,那么就可以实现这一目的... 阅读全文
posted @ 2012-01-21 16:07 我的IT技术 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 忙了几天,无关学习。旁晚才又看起书来,想想自己还有10来本。呵。这寒假过得会很局促。以下内容摘自《java编程思想》,再稍作整理 在以前所用过的程序语言中,在堆上分配对象的代价十分高昂,因此读者自然会觉得Java中所有对象(基本类型除外)都在堆上分配的方式也非常高昂。然而,垃圾回收器对于提高对象的创建速度,却具有明显的效果。听起来很奇怪——存储空间的释放竟然会影响存储空间的分配,但这确实是某些Java虚拟机的工作方式。这也意味着,Java从堆分配空间的速度,可以和其他语言从堆栈上分配空间的速度相媲美。 打个比方,您可以把C++里的堆想象成一个院子,里面每个对象都负责管理自己的地盘。一段时间以后 阅读全文
posted @ 2012-01-18 23:00 我的IT技术 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 来源:图灵社区图灵发言: TEAP是什么?TEAP是Turingbook Early Access Program的简称,即早期试读,它公布的是图灵在途新书未经编辑的内容。一本书的写作周期约为3-6个月,如果在写作的时间里,作者就能够与读者进行沟通和交流,读者可以提前阅读将来才能出版的内容,作者也能收获宝贵的反馈意见。本次TEAP公布的书是《论道HTML5》,欢迎在此与作者秀野堂主交流。本篇内容选自书中第4章第8节。本小节是作者在开发过程中的一些粗浅经验与心得,都是经过具体事务处理后得到的教训,在此作一个总结,希望在开发实践中能够对读者有一些帮助。1. 回答两个问题还记得我们在第三章的Cavn 阅读全文
posted @ 2012-01-17 15:12 我的IT技术 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 以下内容摘自《java编程思想》第三版:程序运行时,对象是怎么进行放置安排的呢?特别是内存是怎么分配的呢?有六个不同的地方可以用来存储数据:1、寄存器:这是最快的存储区,因为它位于不同于其他存储区的地方——处理器内部。但是寄存器的数量极其有限,所以寄存器根据需求进行分配。你不能直接控制,也不能再程序中感觉到寄存器存在的迹象。2、堆栈:位于通用RAM(随即访问存储器)中,但通过“堆栈指针”可以从处理器那里获得直接支持。堆栈指针若向下移动,则分配新的内存;若向上移动,则释放那里的内存。这是一种快速有效的分配存储方法,仅次与寄存器。创建程序时,Java系统必须知道存储在堆栈内所有项的确切生命周期,以 阅读全文
posted @ 2012-01-14 15:16 我的IT技术 阅读(266) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 43 下一页