- 作用
注解本身不是程序,是对程序做出的解释,可以理解为给其他程序看的注释 - 格式
“@注释名(arg)”,可以添加一些参数,如图:
- 使用场地
注解可以添加在**包(package),类(class),方法(method),成员变量(field)**上。 - 元注解
负责解释其他注解的注解;
- @Target(ElementType.xxx):用于描述注解的的适用范围
- @Retention(RetentionPolicy.xxx):用于描述注解的生命周期
- @Documented:说明该注解将包含java文档中
- @Inherited:说明子类可以继承父类中的该注解
- 自定义注解
@Target({ElementType.FIELD,ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface MyAnnotation {
//注解参数格式:类型+参数名称+()+[defalt 默认值]
String name() default "";
}
表示此注解可以作用在方法和成员变量上,且在运行时有效。
使用:
public class T01_TestAnnotation {
@MyAnnotation(name="Tom")
public void test(){
System.out.println("test");
}
}
注意: 注解的定义和使用都非常的简单,但是只是将注解加入到代码上而不去对他进行处理,那么注解将毫无意义,所以,注解一般要和java的反射联合使用。