九、Kotlin 注解

1. 什么是注解

注解是对程序的附件信息说明。

注解可以作用在类、函数、函数参数、属性等上面。

注解的信息可用于源码级、编译期、运行时。

2. 注解类的定义

使用元注解 @Retention 声明注解类的作用时期。

使用元注解 @Target 声明注解类的作用对象。

定义注解类时可以声明带参数的主构造器。其中:

  1. 要求参数类型必须在编译时期就能够确定下来,所以参数类型只能是基本类型、KClass、枚举、其他注解、以及这些类型的数组;

  2. 不可以使用自定义类型作为参数类型。

示例:

3. 注解类的使用

4. 注解和注释的区别

注解(Annotation):特定语法现象,参与编译。

注释(Comment):只存在于源码中,用于提升代码的可读性。

5. 常见的内置注解

  1. 包路径 kotlin.annotation.* 下的注解:主要是一些元注解,用于修饰其他注解

  2. 包路径 kotlin.* 下的注解:是标准库中的一些具有通用用途的注解

  3. kotlin.jvm.* 下的注解:是与JVM虚拟机进行交互时使用到的一些注解

相关推荐
zhangphil7 小时前
Android Page3与Flow分页查媒体数据库展示宫格图片列表,Kotlin
android·kotlin
胡致和1 天前
配置变更后,弹窗为什么飞到了最左边?
kotlin
zhangphil1 天前
Android Page 3 Flow读sql数据库媒体文件,Kotlin
android·kotlin
小书房1 天前
Kotlin使用体验及理解1
android·开发语言·kotlin
Kapaseker1 天前
我想让同事知道我很懂 Compose 怎么办?
android·kotlin
jinanwuhuaguo2 天前
OpenClaw工程解剖——RAG、向量织构与“记忆宫殿”的索引拓扑学(第十三篇)
android·开发语言·人工智能·kotlin·拓扑学·openclaw
jinanwuhuaguo2 天前
OpenClaw协议霸权——从 MCP 标准到意图封建化的政治经济学(第十八篇)
android·人工智能·kotlin·拓扑学·openclaw
zhangphil2 天前
Android sql查媒体数据封装room Dao构造AndroidViewModel,RecyclerView宫格展示,Kotlin
android·kotlin
jinanwuhuaguo2 天前
反熵共同体——OpenClaw的宇宙热力学本体论(第十七篇)
大数据·人工智能·安全·架构·kotlin·openclaw
pengyu2 天前
【Kotlin 协程修仙录 · 筑基境 · 中阶】 | 身份证与通行证:CoroutineContext 的深度解剖
android·kotlin