内置注解:
@Override:表示重写
@Deprecated:不是不推荐使用
@SuppressWarning:需要添加一个参数才能使用,用来抑制编译时的警告信息
元注解:负责注解其他注解,Java中定义了四个类型的元注解
@Target:描述注解的使用范围
@Retention:表示需要在什么级别保存该注释信息,即注解在什么地方使用才有效
@Document:说明该注解将被包含在javadoc中
@Inherited:说明子类可以继承父类的中的注解
自定义注解:
实例:
//自定义注解
public class AnnotationDemo {
//注解可以显示赋值,也可以设置默认为空,如果没有默认值则必须赋值
@MyAnnotation(name = "柯基")
public void test(){
}
}
@Target({ElementType.TYPE,ElementType.METHOD})//表示可以作用在类和方法上
@Retention(RetentionPolicy.RUNTIME)
@interface MyAnnotation{
//注解的参数:参数类型+参数名();
String name() default "";
int age() default 0;
int id() default -1;//如果不存在则返回-1
}
注解只有一个参数时,一般使用value();