- 博客(10)
- 资源 (15)
- 问答 (1)
- 收藏
- 关注
原创 (五) 代理
代理(proxy),是Java SE 1.3新增加的特性。利用代理可以在运行时创建一个实现了一组给定接口的新类。这种功能只有编译时无法确定需要实现哪个接口时才有必要使用。使用场景:有一个表示接口的Class对象(有可能只包含一个接口),它的确切类型在编译时无法知道。要想构造一个实现这些接口的类,就需要使用newInstance方法或反射找出这个类的构造器。但是,不能实例化一...
2012-03-18 23:45:50 87
原创 (二) 对象克隆
1.当拷贝一个变量时,原始变量与拷贝变量引用同一个对象,也就是说,改变一个变量所引用的对象将会对另一个变量产生影响。如果创建一个对象的新的copy,它的最初状态与拷贝对象一样,但以后可以各自改变各自的状态,那就需要clone方法。但clone方法是Object类的一个proteced方法,也就是说在用户编写的代码中不能直接调用它,只有类本身才能克隆类对象。Object类的实现Clone...
2012-03-18 23:44:30 78
原创 (四) 内部类
内部类(inner class)是定义在另一个类中的类。使用内部类的主要原因:(1)内部类方法可以访问该类定义所在的作用域中的数据,包括私有的数据。(2)内部类可以对同一个包中的其它类隐藏起来。(3)当想要定义一个回调函数且不想编写大量代码时,使用匿名(anonymous)内部类比较便捷。1.使用内部类访问对象状态内部类既可以访问自身的属性,也可以访...
2012-03-18 19:27:00 133
原创 (三) 接口与回调
回调(callback)是一种常见的程序设计模式。在这种模式中,可以指出某个特定事件发生时应该采取的动作。DEMO:在java.swing包中有一个Timer类,可以使用它在到达给定的时间间隔时发出通告。如何告知定时器做什么?因为Java标准库中的类采用的是面向对象方法,将某个类的对象传递给定时器,定时器调用这个对象的方法。由于对象可以附带一些附加的信息,所以传递一个对象比传递一个...
2012-03-18 19:21:37 82
原创 (一) 接口
接口不是类,而是对类的一组需求描述,这些类要遵从接口描述的统一格式进行定义。接口中所有方法自动地属于pubilic。因此,在接口中声明方法时,不必提供关键字public。接口可能包含多个方法。接口中还可以定义常量。接口中不能含有属性,也不能在接口中实现方法。提供属性和方法实现的任务应该由实现接口的那个类来完成。为了让类实现一个接口,通常需要下面两个步骤:1)将类声明为实现给定的...
2012-03-18 19:19:51 99
原创 (五) 字节码工程
除了在运行期或者在源码级别上对注解进行处理外,还有第三种可能,在字节码级别上进行处理。除非将注解在源码级别上删除,否则它们会一直存在于类文件中。类文件格式是文档化的。这种格式相当复杂,并且在没有特殊类库的情况下,处理类文件具有很大的挑战性。BCEL,即字节码工程类库,就是这样的特殊类库之一(http://jakarta.apache.org/bcel)。...
2012-03-12 20:59:45 131
原创 (四) 源码级注解处理
注解的用处之一就是自动生成包含程序额外信息的"附文件"。Java EE 5使用注解极大地简化了编程模型。源码级注解是将注解处理器添加到Java编译器中。例 javac -processor ProcessorClassName1,ProcessorClassName2,... sourceFiles 有编译器定位源代码中的注解,然后选择恰当的注解处理器。每个注...
2012-03-12 20:59:16 150
原创 (三) 标准注解
.标准注解Java SE在java.lang, java.lang.annotation和javax.annotation包中定义了大量的注解接口。其中四个是元注解,用于描述注解接口的行为属性,其他的三个是规则接口,可以用它们来注解源代码中的项。 标准注解注解接口 应用场合 ...
2012-03-01 21:28:10 82
原创 (二) 注解语法
(1)一个注解是由一个注解接口定义的: modifiers @interface AnnotationName{ element declaration1; element declaration2; } (2)每个元素声明具有下面这种形式: type elementName(); type elementName...
2012-03-01 21:24:56 116
原创 (一) 使用注解
是那些插入到源代码中用于某种工具处理的表情。这些表情可以再源码层次上进行操作,或者可以处理编译器将它们纳入到注解类文件中。注解不会改变对便携的程序的编译方式。Java编译器对包含注解和不包含注解的代码会生成相同的虚拟机指令。为了能够受益于注解,需要选择一个 处理工具 ,然后向你的处理工具可以理解的代码中插入注解,之后运行该 处理工具。注解可能的用法: 附属文件的自动生成,例如...
2012-03-01 21:18:40 92
jprofiler_windows-x64_8_0_1和序列号
2013-09-26
深入理解Java虚拟机:JVM高级特性与最佳实践
2013-05-31
hadoop-eclipse-plugin-1.0.4.jar
2013-04-16
extjs日期+时间控件
2013-02-28
ooxml-schemas-1.1
2013-01-21
Spring 3.2.2 AOP引入方式集成测试的问题
2013-06-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人