Java注解是附加在代码中的一些元信息,用于一些工具在编译、运行时进行解析和使用,起到说明、配置的功能。注解不会也不能影响代码的实际逻辑,仅仅起到辅助性的作用。注解是Java SE5中引入的重要的语言变化之一。
注解的语法比较简单,除了@符号的使用之外,其他的基本上与java固有的语法一致。我们常用的是定义在java.lang中的注解:
@Override,表示当前的方法定义将覆盖超类中的方法,如果不小心写错方法签名,编译器就会发出错误提示。
@Deprecated,如果使用了该注解(表示不建议使用),在其他调用到该元素,编译器会发出警告。
@SuppressWarnings,关闭不当的编译器警告信息。
定义注解
//注解使用场景(方法或是是域)
@Target(ElementType.METHOD)
//注解使用级别(类文件或者运行时)
@Retention(RetentionPolicy.RUNTIME)
public @interface UseCase{
public int id();
public String description() default "no description";
}
public class TestUseCase{
@UseCase(id=1,description="new password")
public String sayHello{
return "hello";
}
public static void main(String [] args){
for(Method m:TestUseCase.class.getDeclaredMethod()){
UseCase uc=m.getAnnotation(UseCase.class);
System.out.println("id:"+uc.id()+"...description:"+uc.description());
}
}
元注解