什么是注解?
解释:用一个词就可以描述注解,那就是元数据,即一种描述数据的数据。所以,可以说注解就是源代码的元数据。
定义:Annotation是一种应用于类、方法、参数、变量、构造器及包声明中的特殊修饰符。它是一种由JSR-175标准选择用来描述元数据的一种工具。
注解的类型:
4种元注解: 1.@Target、2.@Retention、3.@Documented、4.@Inherited
自定义注解:
public @interface 注解名 {定义体} 注解参数的可支持数据类型
如:
@Target(ElementType.METHOD)//定义你的注解用于什么地方(一个方法或一个域)
@Retention(RetentionPolicy.RUNTIME)//源代码在哪一个级别可用,source、runtime、class
public @interface UseCase {
public int id();
public String description() default "no description";//后面这一段为设置默认的值
}
安卓注解有8种类型:,分别是Nullness注解、资源类型注解、线程注解、变量限制注解、权限注解、结果检查注解、CallSuper注解、枚举注解(IntDef和StringDef)。
作用?
a. 标记,用于告诉编译器一些信息和格式检查
b. 编译时动态处理,如动态生成代码(如在Activity中设置注解,根据id直接使用控件)
c. 运行时动态处理,如得到注解信息(如在单元测试中,根据反射获取对应类的注解信息)?
网友评论