注解(JDK1.5之后)

Posted panyizuoshan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了注解(JDK1.5之后)相关的知识,希望对你有一定的参考价值。

1、注解

注释:首先是一种代码级别的注释,因为注解需要另一端代码去读取它,才有意义

           说他是注释,是因为它本身只是对代码进行说明的作用,并不会修改被注解的代码的功能。

2、样子:@注解名

3、系统的三个最最基本的注解

(1)@Override:表示方法是重写的方法

编译器检查到某个方法上面标记了@Override,就会对方法进行格式检查,看是否符合重写的要求。

(2)@SupressWarings:表示抑制xx警告

(3)@Deprecated:表示xx已过时

编译器检测到你使用了已经标记了@Deprecated的类或方法等时,会弹出警告,不建议使用,因为往往这样的方法要么很麻烦,要么有问题。

 

4、文档注释

(1)@author 作者

(2)@version 版本

(3)@since 起始版本

(4)@see 参考的类等

(5)@param 参数名 数据类型  参数的解释

(6)@return 返回值类型  说明

(7)@throws 异常的类型 说明

其中(5)(6)(7)用在方法上面,而且要注意,@param有几个形参写几个,没有就不写。@return返回值类型是void就不写,不是void需要写,@throws如果有抛出异常类型就写,没有就不写。

如果代码中添加了文档注释,可以使用javadoc.exe工具生成API。

文档注释:

/**
文档注释
*/

 

5、JUnit的几个注解

别忘了引入JUnit的库

(1)@Test:表示某个方法是可以单独测试的方法

(2)@Before/@After:表示这个方法在每一个@Test方法之前/后都要运行

(3)@BeforeClass/@AfterClass:表示这个方法要在所有的测试方法之前/后运行,只运行一次

使用JUnit的类必须是公共的

标记@Test、@Before、@After的方法要求:public void 无参

标记@BeforeClass、@AfterClass的方法要求:public static void 无参

 

6、自定义注解

(1)语法格式

@元注解
【修饰符】 @interface 注解名
    



@元注解
【修饰符】 @interface 注解名
    配置参数

  

配置参数的类型有要求:8种基本数据类型、String、Class、枚举、注解及其它们的数组。

(2)元注解

A:@Target:说明注解的使用位置

位置有ElementType枚举类型的10个常量对象来指定

B:@Retention:说明注解的生命周期

生命周期由RetentionPolicy的3个常量对象来指定:SOURCE、CLASS、RUNTIME

只有RUNTIME阶段的才能被反射读取到

C:@Inherited:说明这个注解是否可以被子类继承

D:@Documented:说明这个注解信息是否可以被javadoc读取到API中

 

(3)使用自定义注解有什么要求

A:使用自定义注解时,要先看它的@Target,看能用在什么位置

B:使用自定义注解时,要看是否有配置参数需要赋值

@注解名(参数名 = 参数值)

当注解的配置参数只有一个需要赋值,并且参数名是value,那么可以省略value=

以上是关于注解(JDK1.5之后)的主要内容,如果未能解决你的问题,请参考以下文章

Annotation

Java 之 注解

Java中的注解

JAVA学习之注解

JDK1.5新特性之注解

annotation