java自定义注解

@Target(value=ElementType.METHOD)  //意味着注解只能用在方法前面
@Retention(RetentionPolicy.RUNTIME)  //注解在运行时有效,即可以被反射读取
public @interface My {
    //注解内包含的是参数的信息,不是方法,比如定义了一个String类型的name变量
    String  name() default "";  //加默认值,通常为0或空字符串,默认值为-1表示不存在
    int age() default 0;
    int id() default -1;
    //定义一个数组
    String[] s() default {"me","you"};
}

value值可以定义为一个数组,以下表示可以在方法和类前使用注解

禹州ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!

@Target(value= {ElementType.METHOD,ElementType.TYPE})
public @interface my2{

}

如果注解里只有一个参数,通常定义为value

@Target(value= {ElementType.METHOD,ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface My2 {
    //如果注解里只有一个参数,通常定义为value
    String value() default "";
}

main

public class Demo {

    @My(age=19,name="me",id=10,s= {"it","that"})  //显示指定相应的值,可通过反射读取
    public void test()
    {

    }
    //注解只有一个参数时
    @My2(value="aaa")//或者 @My2("ada")

    public void test2()
    {

    }
    public static void main(String[] args) {

    }

}

本文题目:java自定义注解
当前网址:http://bzwzjz.com/article/jppgip.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 响应式网站设计 手机网站制作 网站建设 成都营销网站建设 重庆网站建设 网站制作 四川成都网站制作 企业网站建设 成都网站建设 企业网站设计 手机网站制作设计 定制网站设计 移动手机网站制作 营销型网站建设 成都响应式网站建设 高端品牌网站建设 重庆网站建设 成都网站建设公司 自适应网站设计 手机网站建设套餐 成都网站制作 成都网站建设