Java自定义注解

  注解就是对类,方法,变量等起到说明作用

package com.dingyu;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 自定义的注解
 * 
 * @author dingyu
 *
 */

/*
 * @Target 是一种元注解,对注解进行注解,就是对自定义的注解说明一下 ,Target注解中给的值表示我自定义的注解可以用在什么范围
 * @Retention 元注解的另一种,用于描述注解的生命周期,Runtime表示在程序运行时,这个周期还是在的,这样就可以利用反射来获得
 * 上面两个元注解的参数都是一个枚举类型,具体哪些可以去看jdk api或者源代码
 */
@Target(value = { ElementType.METHOD, ElementType.TYPE })
@Retention(RetentionPolicy.RUNTIME)
public @interface MyAnnotation {
    
    // 前面是参数的类型,后面是参数的名字,比如下面就是一个叫id,类型为String数组的参数
    String[] id() default {"04","201617010104"};//给一个默认值 
    String name() default "dingyu";
}
package com.dingyu;
/**
 * 使用自定义注解
 * @author dingyu
 *
 */
@MyAnnotation(id = { "这是自定义", "的注解" }, name = "dingyu")
public class MyAnnotationDemo {
}
原文地址:https://www.cnblogs.com/dddyyy/p/10008837.html