标签:ble 接口 加载 ati 页面 color not shu doc
1:作用
特殊标记,这些标记可以在编译,类加载,运行时被读取(需要指定"作用时期")
2:元注解
@Retention
标记时期(编译,类加载,运行时),只能有1个
RetentionPolicy.SOURCE 注解存在于源代码中,编译时会被抛弃
RetentionPolicy.CLASS 注解会被编译到class文件中,但是JVM会忽略
RetentionPolicy.RUNTIME JVM会读取注解,同时会保存到class文件中
@Target
作用范围(类,构造器,属性,方法,参数....) ,可以设置多个
ElementType.TYPE 用于类,接口,枚举但不能是注解 ElementType.FIELD 作用于字段,包含枚举值 ElementType.METHOD 作用于方法,不包含构造方法 ElementType.PARAMETER 作用于方法的参数 ElementType.CONSTRUCTOR 作用于构造方法 ElementType.LOCAL_VERIABLE 作用于本地变量或者catch语句 ElementType.ANNOTATION_TYPE 作用于注解 ElementType.PACKAGE 作用于包
@Documented
用于指定该元annotation修饰的annotation类将被Javadoc工具提取成文档,就是你定义的注解有@Documented
修饰,在自动提取API文档时,文档的方法会带有这个注解
@Inherited
该元annotation指定被它修饰的annotation将具有继承性,例如使用该元注解自定义的annotation,在修饰
了一个类后,该类的子类则默认使用你自定义的注解
@Retention(RetentionPolicy.RUNTIME) @Target({ElementType.FIELD,ElementType.METHOD}) //作用在字段上 public @interface NeedSetValue {
String value() default "zsc"; //有默认值的属性
Class beanClass(); // 需要去哪个class中调用 (userName的属性从) String method(); // 需要调用class中的哪个方法 String param(); // 调用方法的参数 String targetField(); //调用方法后需要哪个值(为了set到添加该注解的属性上) }
4:利用反射获取属性值(反射学习) https://i-beta.cnblogs.com/posts/edit
5:aop+注解+反射 自动对数据库查询不到的值赋值
(订单详情页面:订单信息+用户信息
单表查订单详情,没有用户信息的;使用代理的方式,自动注入用户信息)
地址:待续
本篇参考地址参考:https://www.jianshu.com/p/65ef3f59841f
https://www.runoob.com/w3cnote/java-annotation.html
标签:ble 接口 加载 ati 页面 color not shu doc
原文地址:https://www.cnblogs.com/draymond/p/12499670.html