Annotation(注解)简介:
注解大家印象最深刻的可能就是JUnit做单元测试,和各种框架里的使用了。本文主要简单介绍一下注解的使用方法,下篇文章再深入的研究。
annotation并不直接影响代码语义,但是它能够被看作类似程序的工具或者类库,它会反过来对正在运行的程序语义有所影响。
annotation可以从源文件,class文件或者以在运行时反射的多种方式被读取
java注解系统自带有主要以下几个注解:
Override注解表示子类要重写(override)父类的对应方法
Deprecated注解表示方法是不建议被使用的
Suppress Warnings注解表示抑制警告
如何自定义注解:
只需要使用@interface来定义一个注解,例如:
//使用@interface来声明一个注解(实际上是自动继承了java.lang.annotation.Annotation接口)
public @interface AnnotationTest {
String value1() default "hello"; //为注解设置String类型的属性Value1,并使用defalut关键字设置默认值
EnumTest value2(); //设置枚举类型的value2
String[] value3(); //设置数组类型的value3
}
如何来使用注解呢,如下:
@AnnotationTest(value2 = EnumTest.age, value3={""})
public class AnnotationUsage {
@AnnotationTest(value1 = "Test", value2 = EnumTest.name, value3={""})
String test;
@AnnotationTest(value1 = "Test", value2 = EnumTest.name, value3={""})
public void method(){