九、Kotlin 注解

1. 什么是注解

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

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

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

2. 注解类的定义

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

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

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

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

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

示例:

3. 注解类的使用

4. 注解和注释的区别

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

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

5. 常见的内置注解

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

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

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

相关推荐
XiaoLeisj9 小时前
Kotlin Flow:冷流收集、并行订阅、emit 推送、delay 延迟、collect 全量收集与 collectLatest 的实时数据处理
android·kotlin·android jetpack·协程·flow
Android-Flutter9 小时前
android jetpack 详解
android·kotlin
Enaium1 天前
我实现了KMP的SDL绑定并编写了高性能软光追
前端·kotlin
Android打工仔1 天前
Continuation 的链式关系 —— 一个 suspend 函数如何把结果交还给调用者?
android·kotlin
Kapaseker1 天前
小白都看得懂的 Skill 教程 - 初识 Skill
android·kotlin·vibecoding
zhangphil1 天前
Android Coil 3 ImageRequest.Builder error() 和 fallback()异同
android·kotlin
我命由我123452 天前
Android 控件 - CardView(快速实现圆角)
android·java·java-ee·kotlin·android studio·android-studio·android runtime
大黄说说2 天前
Java 与 Kotlin 混合开发避坑指南:老项目平滑迁移 Kotlin 实操手册
java·开发语言·kotlin
我命由我123452 天前
Android Drawable - gradient
android·java·java-ee·kotlin·android studio·android-studio·android runtime
Kapaseker2 天前
AI 时代,读源码还有用吗?从 Kotlin 集合排序说起
android·kotlin