Skip to content

2-Java注解

Posted on:October 18, 2019 at 21:58:14 GMT+8

前言

注解在Java SE5中引入。注解好处多多,TA可以使我们的代码变得简洁,减少样板代码,还能存储有关程序的额外信息。程序员还可以自定义注解

// @Override为注解
@Override
public String toString() {
    return "ConferencePaper:" + getTitle();
}

Java内置注解

元注解

用来自定义注解

自定义注解

使用上面的元注解来自定义注解

标记注解

// 自定义注解示例
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Test {
}

使用@interface关键字来表明Test是一个注解,像这样的注解中没有任何元素的称为标记注解。

带元素的注解

// 带元素的注解示例
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface UseCase {
    int id();
    String description() default "no description";
}

使用时

@UseCase(id = 19)
public void checkId() {

}

@UseCase(id = 19, description = "for checking name")
public boolean checkName() {
    return false;
}

@UseCase(description = "for checking age", id = 20)
public boolean checkAge() {
    return false;
}

如上所示,使用id=19这样传值,顺序任意。可见设置了default值的可省略传值,使用默认值。

注解元素

处理自定义注解

如果没有用来读取注解的工具,那注解也不会比注释更有用。

处理注解就需要我们编写注解处理类,用到了上一篇文章讲到的反射

2019-10-18 20:46:01