易截截图软件、单文件、免安装、纯绿色、仅160KB

Java Annotation使用大全 (ZT)


一、Annotation究竟是什么?
    Annotation 提供了一条与程序元素关联任何信息或者任何元数据(metadata)的途径。从某些方面看,annotation就像修饰符一样被使用,并应用于包、类型、构造方法、方法、成员变量、参数、本地变量的声明中。这些信息被存储在annotation的“name=value”结构对中。 annotation类型是一种接口,能够通过java反射API的方式提供对其信息的访问。
    annotation能被用来为某个程序元素(类、方法、成员变量等)关联任何的信息。需要注意的是,这里存在着一个基本的潜规则:annotaion不能影响程序代码的执行,无论增加、删除 annotation,代码都始终如一的执行。另外,尽管一些annotation通过java的反射api方法在运行时被访问,而java语言解释器在工作时忽略了这些annotation。正是由于java虚拟机忽略了annotation,导致了annotation类型在代码中是“不起作用”的;只有通过某种配套的工具才会对annotation类型中的信息进行访问和处理。本文中将涵盖标准的annotation和meta- annotation类型,陪伴这些annotation类型的工具是java编译器(当然要以某种特殊的方式处理它们)。
    由于上述原因,annotation在使用时十分简便。一个本地变量可以被一个以NonNull命名的annotation类型所标注,来作为对这个本地变量不能被赋予null值的断言。而我们可以编写与之配套的一个annotation代码分析工具,使用它来对具有前面变量的代码进行解析,并且尝试验证这个断言。当然这些代码并不必自己编写。在JDK安装后,在JDK/bin目录中可以找到名为“apt”的工具,它提供了处理annotation的框架:它启动后扫描源代码中的annotation,并调用我们定义好的annotation处理器完成我们所要完成的工作(比如验证前面例子中的断言)。说到这里, annotation的强大功能似乎可以替代XDoclet这类的工具了,随着我们的深入,大家会更加坚信这一点。
注:详细描述请参看jsr250规范:
http://www.jcp.org/aboutJava/communityprocess/pfd/jsr250/
二、Annotation的定义:
    这段文字开始介绍annotation相关技术。在此大家将看到java5.0的标准annotation类型,这种标准类型就是前文中所说的“内建”类型,它们可以直接被javac支持。可喜的是,在java6.0beta版中的javac已经加入了对自定义annotation的支持。
1。Annotation的概念和语法:


相关文档:

JNBridge跨越Java和.Net代码

凭借JNBridge
技术,Java和.NET代码无需交叉编译
器就可以实现对象共享。所有Java代码运行在JVM上,而.NET代码则运行在CLR上。在该方案下,JVM和CLR可以运行在不同的机器上,也可以运
行在一台机器的不同进程上,甚至还能运行在相同的进程上。从开发者的角度来看,运行在其他虚拟机上的对象仅仅是代理的远程对象而已。JN ......

配置Java和eclipse环境



师让下载安装jdk1.4、jdk1.5和jdk1.6三个版本的Java开发包,并且熟练切换各个环境,其实就是配置不同的环境变量。以前只是在环境变
量中设置了用户变量,Java运行也很正常。一旦需要在几个版本中切换,用户变量就失效了。经过尝试才知道必须设置系统变量,为了方便可以设置
JAVA_HOME变量为jdk的安装路径,再把 %JA ......

JAVA(四)

Java杂谈(九)--Struts 
                J2ee的开源框架很多,笔者只能介绍自己熟悉的几个,其他的目前在中国IT行业应用得不是很多。希望大家对新出的框架不要盲目的推崇,首先一定要熟悉它比旧的到底好在哪里,新的理念和特性 ......

java性能的优化(一)

 
我对问题的理解:面试中的一个问题,居然想了半天没有什么头绪,我想还是没有思考,没有积累过。其实完全可以说上一些小细节,比如用StringBuffer代替String,用HashMap代替Hashtable, 乘法操作用位移,尽量复用已有的经过检验的高效代码等等。
    下面的文章转载自别的网站,写得很专业,周到, ......

java性能的优化(二)

    三.优化JAVA程序设计和编码,提高JAVA程序性能的一些方法。
   
通过使用一些前面介绍过的辅助性工具来找到程序中的瓶颈,然后就可以对瓶颈部分的代码进行优化。一般有两种方案:即优化代码或更改设计方法。我们一般会选
择后者,因为不去调用以下代码要比调用一些优化的代码更能提 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号