注解
1.内置注解
@Override:重写
@Deprecated:用于修辞方法,属性,类,表示不鼓励程序员使用这样的元素
@SuppressWarnings:需添加参数:@SuppressWarnings("all")用来抑制编译时的警告信息
2.元注解
@Target:描述注解的使用范围
@Target(value={ElementType.METHOD,ElementType.TYPE})
@Retention:表示需要在什么级别保存该注释信息,用于描述注解的生命周期。 SOURCE<CLASS<RUNTIME
@Rentention(value=RententionPolicy.RUNTIME)
@Document:说明该注释包含在Javadoc中
@Inherited:子类可以继承父类中的该注解
3.自定义注解
package com.zhang.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
public class Test01 {
//注解可以显示赋值,如果没有默认值,我们必须给注释赋值
@MyAnnotation(age=20)
public void test(){}
}
@Target({ElementType.TYPE,ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Interface MyAnnotation{
//注解的参数:参数类型+参数名();
String name() default ""; //default:表示默认值
int age();
}