注解(Annotation)
- 概述:从 JDK 5.0 开始, Java 增加了对元数据(MetaData) 的支持, 也就是Annotation(注解)。Annotation 可以像修饰符一样被使用, 可用于修饰包, 类, 构造器, 方法, 成员变量, 参数, 局部变量的声明, 这些信息被保存在 Annotation的 “name=value” 对中。注解是一种趋势,一定程度上
可以说:框架 = 注解 + 反射 + 设计模式。 - 使用:使用 Annotation 时要在其前面增加 @ 符号, 并 把该 Annotation 当成
一个修饰符使用。用于修饰它支持的程序元素
生成文档相关的注解
1 | @author 标明开发该类模块的作者,多个作者之间使用,分割 |
- @param @return 和 @exception 这三个标记都是只用于方法的。
- @param的格式要求:@param 形参名 形参类型 形参说明
- @return 的格式要求:@return 返回值类型 返回值说明
- @exception的格式要求:@exception 异常类型 异常说明
@param和@exception可以并列多个
示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22package com.annotation.javadoc;
/**
* @author shkstart
* @version 1.0
* @see Math.java
*/
public class JavadocTest {
/**
* 程序的主方法,程序的入口
* @param args String[] 命令行参数
*/
public static void main(String[] args) {
}
/**
* 求圆面积的方法
* @param radius double 半径值
* @return double 圆的面积
*/
public static double getArea(double radius){
return Math.PI * radius * radius;
}
}
在编译时进行格式检查(JDK 内置的三个基本注解)
1 | @Override: 限定重写父类方法, 该注解只能用于方法 |
demo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15package com.annotation.javadoc;
public class AnnotationTest{
public static void main(String[] args) {
"unused") (
int a = 10;
}
public void print(){
System.out.println("过时的方法");
}
public String toString() {
return "重写的toString方法()";
}
}