首页 > 编程语言 > 详细

Java--注解

时间:2021-08-12 11:59:34      阅读:19      评论:0      收藏:0      [点我收藏+]
         
/**
 * 自定义注解,
 * 注解本质上是一个接口,该接口默认继承java.lang.annotation.Annotation接口
 * 元注解@Target表示该注解可以运用的范围,类,方法,字段
 * ;@Retention(RetentionPolicy.RUNTIME)当前注解会保留到class文件,并且被jvm识别
 * ;@Document 藐视该注解是否被抽取到api文档中
 * ;@Inherited 该注解是否被子类继承
 * @author cq
 */
@Target({ElementType.TYPE,ElementType.METHOD})
public  @interface MyAnnotation {
    /**
     * 属性,抽象方法 ;
     * 返回值只能是 1.基本类型
     *            2.String
     *            3.枚举
     *            4.注解
     *            5.以及以上类型的数组
     */
    int value();//如果只有一个value,注解赋值时,value可以省略不写

    int age() default 12;//如果想拥有默认值 在后面加上default关键字,可以不在使用注解时赋值

    String[] names();//数组赋值比较特殊,用{}赋值,如果数组元素只有一个,可以省略{}


}

解析注解
1.获取注解定义的位置的对象(CLass,Method,Filed)。
例如:Class clazz=Myclass.class;
2.获取注解对象。
MyAnnotaion myMynno=getAnnotation(MyAnnotation.class)//其实是生成了一个注解接口子类实现对象
3.调用注解中的抽象方法获取返回值。
int value=myAnno.value;

Java--注解

原文:https://www.cnblogs.com/staynight/p/15130767.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!