一、JDK内置注解
1.作用在代码的注解:
- @Override:检查该方法是否是重写的方法。如果父类或所有引用的接口中无该方法,会编译错误。
- @Deprecated:标记过时的方法。使用该方法,会报编译警告。
- @SuppressWarnings:使编译器忽略注解中声明的警告。
2.元注解(作用在注解的注解):
- @Retention:标识这个注解怎么保存,是只在代码中(SOURCE),还是编入class文件中(CLASS),或者是在运行时可以通过反射访问(RUNTIME)。 (SOURCE < CLASS < RUNTIME)
- @Documented:标记这些注解是否包含在用户文档中。
- @Target:标记这个注解应该是那种Java成员。 (作用在类、方法还是其他地方)
- @Inherited:标记该注解是继承与哪个注解类。(默认注解不继承任何父类)
二、自定义注解
格式:
public @interface 注解名 { 定义体 }
Annotation类中的参数设定:
1.参数只能用public或默认访问修饰符;
2.参数成员只能用基本类型(byte、short、char、int、long、float、double、boolean)和String、Enum、Class、annotations等数据类型,以及这些类型的数组;
3.如果只有一个参数成员,最好将参数名设为 “ value ”。