Java 学习:自定义注解

自定义注解:用 @interface 声明一个注解


格式:public @interface 注解名 { 定义内容 }
示例1:

//这是个简单的注解
public @interface myAnnotion{
  
}

示例2:

//这个注解可以用在方法上
@Target(ElementType.METHOD)
public @interface myAnnotion{
  
}


public class Test{
    //用上面自定的注解
    @myAnnotion
    void function(){
  
    }
}


示例3:

@Target(value={METHOD,FIELD}) //这个注解可以用在方法和字段上
public @interface myAnnotion{
    //该注解的参数:参数类型 + 参数名();
    String name(); //String类型的参数
    int num() default 0; //int类型的参数,可以不传此参数,默认0
}


public class Test{

    //用上面自定的注解,传一个参数
    @myAnnotion(name = "a")
    int num a;

    //用上面自定的注解,传两个参数
    @myAnnotion(name = "function" , num = 2)
    void function(){
  
    }
}


分析:
  1. @interface 用来声明一个注解,格式:public @interface 注解名 { 注解内容 }
  2. 其中的每一个方法实际上是声明了一个配置参数。
  3. 方法名就是参数名称。
  4. 返回值类型就是参数的类型。
  5. 可以通过 default 来声明参数的默认值。
  6. 如果只有一个参数成员,一般参数名为value。



上一篇:二层链路聚合配置


下一篇:abstract和interface的区别?