- @Override 检查该方法是否是重写方法。如果发现其父类,或者是引用的接口中并没有该方法时,会报编译错误。
- @Deprecated 标记过时方法。如果使用该方法,会报编译警告。
- @SuppressWarnings 指示编译器去忽略注解中声明的警告。
- @SafeVarargs 忽略任何使用参数为泛型变量的方法或构造函数调用产生的警告。
- @FunctionalInterface 标识一个匿名函数或函数式接口。
- @Repeatable 标识某注解可以在同一个声明上使用多次。
自定义注解:
定义格式
@Retention{SOURCE\CLASS\RUNTIME}
@Documented(若没有定义,则 Annotation 不会出现在 javadoc 中)
@Target{TYPE\ FIELD\ METHOD\PARAMETER\ CONSTRUCTOR\LOCAL_VARIABLE}(若有 @Target,则该 Annotation 只能用于它所指定的地方)
@Inherited(标记这个注解是继承于哪个注解类(默认 注解并没有继承于任何子类))
@interface 自定义注解名 {
参数类型+参数名()
}