Kotlin 8 反射 注解

淺唱寂寞╮ 提交于 2020-03-04 15:25:56

反射是允许程序在运行时访问程序结构的一类特性
程序结构包括: 类 接口 方法 属性 的语法特性
常见用途

列出类型的所有属性 方法 内部类等
调用给定名称及签名的方法或者访问注定名称的属性
通过签名信息获取泛型实参的具体类型
访问运行时注解及其信息完成注入或者配置操作

常用数据结构

KType 描述可擦除的类型或者泛型参数,通过typeOf或者向下类型获取对应的父类 属性 函数等
KClass  描述对象的实际类型 不含泛型参数
KProperty 描述属性 通过KClass获取
KFunction 描述函数 通过KClass获取

注解是对程序的附加信息说明
可以对类 函数 函数参数 属性等做标注
注解的信息可用于源码级 编译期 运行时

注解本身也是一给类

@Retention(AnnotationRetention.RUNTIME)//指定作用时机
@Target(AnnotationTarget.CLASS)//指定目标
annotation class  Api(val ulr:String)//注解参数
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!