一、注解中的@Target(取值ElementType)
ElementType枚举类型包含:
- TYPE :用于注解类
- FIELD:用于注解成员(域)
- CONSTRUCTOR 用于注解 构造
- PACKAGE 用于注解包
- PARAMETER用于注解参数
- LOCAL-VARIABLE 用于注解局部变量
二 、注解中的@Retention(取值RetentionPolicy)
RetentionPolicy 枚举类型包含:
- RUNTIME 保留到运行时有效
- SOURCE 只在源码中有效
- CLASS 保留到字节码中有效
package annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* Target:
* 取值(ElementType):
* CONSTRUCTOR 用于描述构造
* FIELD用于描述域(成员变量)
* LOCAL_VARIABLE 用于描述局部变量
* TYPE 用于描述类
* PACAGE 用于描述包
* PARAMETER 用于描述参数
* @author My
*
*/
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Column {
String name() default "colName";
}