java注解-笔记

厚脸皮精神~~

1.在编写代码时,除了源程序以外,我们还会使用Javadoc标签对类、方法或成员变量进行注释,以便使用Javadoc工具生成和源代码配套的Javadoc文档。

2.注解是代码的附属信息,它遵循一个基本原则:注解不能直接干扰程序代码的运行,无论增加或删除注解,代码都能够正常运行。Java语言解释器会忽略这些注解,而由第三方工具负责对注解进行处理

3.java内置了三种注解,定义在java.lang包中

@Override:只能用在方法之上的,用来告诉别人这一个方法是改写父类的。

@Deprecated:建议别人不要使用旧的API的时候用的,编译的时候会用产生警告信息,可以设定在程序里的所有的元素上。  //单词是  过时的

@SuppressWarnings:表示关闭一些不当的编译器警告信息。

4.注解定义包含四个元注解,分别为@Target,@Retention,@Documented,@Inherited。

1)  @Target     表示该注解用于什么地方

2)  @Retention  表示在什么级别保存该注解信息   //保留,保持,维持

3)  @Documented 将此注解包含在 javadoc 中

4)  @Inherited  允许子类继承父类中的注解

5.使用注解

@Description(value="使用注解的实例")
public class TestAnnotation {

}

使用注解的语法:@<注解名>(<成员名1>=<成员值1>,<成员名1>=<成员值1>,...)

如果成员是数组类型,可以通过{}进行赋值,如boolean数组的成员可以设置为{true,false,true}

1)   多成员的注解

@AnnoExample(id= 2868724, synopsis = "Enable time-travel", engineer = "Mr. Peabody")

2)   一个成员的注解,成员名为value

可以省略成员名和赋值符号:

@Copyright("Right Reserved")

@Copyright("2011 bookegou.com All Right Reserved")

3)   无成员的注解

@Override

@Override

4)   成员为字符串数组的注解

@SuppressWarnings(value={"unchecked","fallthrough"})

@SuppressWarnings(value={"unchecked","fallthrough"})

5)   成员为注解数组类型的注解

@Reviews({@Review(grade=Review.Grade.EXCELLENT,reviewer="df"),

@Review(grade=Review.Grade.UNSATISFACTORY,reviewer="eg", 

comment="This method needs an @Override annotation")})

Coding
原文地址:https://www.cnblogs.com/ccie-leon-43093/p/5373484.html