注解(Annotation):
作用:
注解可以对类中的结构(属性,方法,构造器)进行补充说明,同时不改变原有的结构
熟悉系统中常用的三个注解:
@Override:限定重写父类方法,该注解只能用于方法
@Deprecated:用于表示所修饰的元素(类,方法等)已过时,通常是因为所修饰的结构 危险或存在更好的选择
@SuppressWarnings:抑制编译器警告
自定义注解:
格式:@interface 注解名{ }
元注解:注解的注解(作用在注解上面的注解)
** @Retention**:用来说明该注解所作用在的注解的生命周期
** SOURCE**:被编译器所抛弃,不使用了
** CLASS**:编译期间-运行期间(在运行期间该注解就已经死亡了)
** RUNTIME**:运行期间-(在整个运行期间该注解都是存活的)
@Target:用来说明该注解所作用的注解,可以使用在的结构有哪些
@Documented:用来说明该注解所作用的注解,是否可以被javadoc所解析
@Inherited:用来说明该注解所作用的注解,是否可以被子类所继承
例: @Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@interface MyTiger{
String value();
}
class Person{
@MyTiger(value="toString")
@Override
public String toString() {
return super.toString();
}
}