java注解简单学习

来源:互联网 发布:云计算解决方案架构师 编辑:程序博客网 时间:2024/05/16 10:54

主要从三部分学习:

1. java提供的元注解

2. 自定义注解

3.注解的实际应用

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1 java提供的元注解(java.lang.annotation包

(1)@Target:被描述的注解可以用在什么地方【例如:@Target(ElementType.TYPE)

取值(ElementType)有:

CONSTRUCTOR:用户描述构造器

FIELD:字段、枚举的常量

METHOD:方法

PACKAGE:包

TYPE:类、接口、枚举

PARAMETER:参数

LOCAL_VARIABLE:局部变量

(2)@Retention:注解的生命周期、被描述的注解在什么范围内有效。【@Retention(RetentionPolicy.RUNTIME)】

取值(@RetentionPolicy)有:

SOURCE:注解仅存在于源码中,在class字节码文件中不存在。

CLASS:默认的保留策略,注解会在class字节码文件中存在,但运行时无法获取

RUNTIME:注解在class文件字节码中存在,并且在运行时可以通过反射获取到。

(3)@Documented:该注解可以被包含在javadoc中。仅仅是一个标记注解,没有成员。

(4)@Inherited:是一个标记注解。子类可以继承父类中的该注解。


2 自定义注解

在eclipse通过  “项目右键”-----------“new”----------------"Annotation",创建自定义注解,如下:


自定义注解格式:

public @intergface 注解名{

//注解定义体

}

使用@interface自定义注解时,自动继承了java.lang.annotation.Annotation接口,由编译程序自动完成,(因此在自定义注解的时候不能继承其它注解或者类)。

注解参数的可支持数据类型:

所有基本数据类型、String类型、Class类型、enum类型、Annotation类型、以上所有类型的数组。


注解元素必须有确定的值,要么在定义注解的默认值中指定,要么在使用注解时指定,使用空字符串或者0做为默认值是一种常用的做法。


3 注解的实际应用


针对注解的响应是关键。

原创粉丝点击