Kotlin 术语表
专有名词注释查阅表 | 1 个分类
Glossary
Kotlin 术语表
B
| 术语 | 英文 | 释义 |
|---|---|---|
| 伴生对象 | Companion Object | 与类关联的单例对象,用于替代 Java 中的静态成员,通过 companion object 声明 |
| 闭包 | Closure | 捕获并持有其外部作用域变量的 lambda 表达式或匿名函数 |
C
| 术语 | 英文 | 释义 |
|---|---|---|
| Channel | Channel | 协程间用于热数据流的通信原语,支持多生产者多消费者模式 |
| 操作符重载 | Operator Overloading | 通过约定函数名对内置操作符进行自定义行为实现 |
| 初始化块 | Init Block | 使用 init 声明的代码块,在类实例化时执行,用于补充主构造函数的逻辑 |
D
| 术语 | 英文 | 释义 |
|---|---|---|
| DSL | Domain-Specific Language | 利用 Kotlin 语法特性(如 lambda 尾随、中缀函数)构建的领域特定语言 |
| 对象表达式 | Object Expression | 匿名类的即时实例化表达式,用于创建单例或匿名接口实现 |
| 对象声明 | Object Declaration | 使用 object 关键字声明的单例对象,替代类+实例的写法 |
| 多平台 | Kotlin Multiplatform | Kotlin 的跨平台编译能力,支持将代码共享到 JVM、JS、Native 等多个目标平台 |
E
| 术语 | 英文 | 释义 |
|---|---|---|
| expect/actual | expect/actual | 多平台项目中用于声明平台无关接口(expect)与平台特定实现(actual)的机制 |
| 枚举类 | Enum Class | 使用 enum class 定义的类型安全枚举,每个实例都是单例对象 |
F
| 术语 | 英文 | 释义 |
|---|---|---|
| Flow | Flow | Kotlin 协程中的冷数据流 API,支持背压和生命周期感知的异步数据流处理 |
| 泛型 | Generics | 支持类型参数化的语言特性,使类、接口和函数能够操作任意类型 |
G
| 术语 | 英文 | 释义 |
|---|---|---|
| 高阶函数 | Higher-Order Function | 接受函数作为参数或返回函数的函数,是函数式编程的核心特性 |
| 挂起函数 | Suspend Function | 使用 suspend 修饰的函数,可在协程中暂停执行而不阻塞线程 |
| 构造函数 | Constructor | 用于创建类实例的特殊函数,分为主构造函数和次构造函数 |
J
| 术语 | 英文 | 释义 |
|---|---|---|
| 解构声明 | Destructuring Declaration | 将一个对象拆解为多个变量的语法,基于 componentN 操作符约定 |
K
| 术语 | 英文 | 释义 |
|---|---|---|
| 扩展函数 | Extension Function | 在不继承类的情况下为现有类添加新函数的能力 |
| 空安全 | Null Safety | Kotlin 的类型系统特性,在编译期区分可空类型与不可空类型以防止空指针异常 |
L
| 术语 | 英文 | 释义 |
|---|---|---|
| 类型别名 | Type Alias | 使用 typealias 为已有类型提供替代名称,提升复杂类型的可读性 |
| 类型推断 | Type Inference | 编译器自动推导表达式类型的机制,减少冗余的类型声明 |
M
| 术语 | 英文 | 释义 |
|---|---|---|
| 密封类 | Sealed Class | 限制类继承层次的抽象类,所有子类必须在同一文件中声明,便于穷举检查 |
| 命名参数 | Named Argument | 调用函数时通过参数名指定实参,提升可读性并允许跳过默认参数 |
N
| 术语 | 英文 | 释义 |
|---|---|---|
| 内联函数 | Inline Function | 使用 inline 修饰的函数,编译时将函数体展开到调用处,消除 lambda 的对象分配开销 |
Q
| 术语 | 英文 | 释义 |
|---|---|---|
| 契约 | Contract | 向编译器提供函数行为的额外保证信息,如调用后变量非空或返回值关系 |
R
| 术语 | 英文 | 释义 |
|---|---|---|
| reified | Reified Type Parameter | 内联函数中使用的关键字,使泛型类型参数在运行时保留,支持 is 检查和反射 |
S
| 术语 | 英文 | 释义 |
|---|---|---|
| SAM 转换 | SAM Conversion | 当接口只有一个抽象方法时,自动将 lambda 表达式转换为该接口实例的机制 |
| 数据类 | Data Class | 使用 data class 声明的类,自动生成 equals、hashCode、toString、copy 等方法 |
| 属性委托 | Delegated Property | 通过 by 关键字将属性的 getter/setter 委托给另一个对象处理的机制 |
W
| 术语 | 英文 | 释义 |
|---|---|---|
| 委托属性 | Delegated Property | 通过 by 关键字将属性的 getter/setter 逻辑委托给委托类实现的属性 |
| 尾递归 | Tail Recursion | 使用 tailrec 修饰的递归函数,编译器将其优化为循环以避免栈溢出 |
X
| 术语 | 英文 | 释义 |
|---|---|---|
| 协程 | Coroutine | 可挂起计算的实例,轻量级并发原语,通过挂起而非阻塞实现异步编程 |
| 型变 | Variance | 描述泛型类型之间子类型关系的规则,包括协变(out)、逆变(in)和不变 |
Y
| 术语 | 英文 | 释义 |
|---|---|---|
| 延迟初始化 | Lazy Initialization | 使用 by lazy 或 lateinit 延迟属性初始化的机制,优化资源使用 |
Z
| 术语 | 英文 | 释义 |
|---|---|---|
| 智能转换 | Smart Cast | 编译器在类型检查后自动将变量转换为更具体类型的特性,无需显式强制转换 |
| 作用域函数 | Scope Function | let、run、with、apply、also 等函数,在对象上下文中执行代码块并返回特定结果 |
| 中缀函数 | Infix Function | 使用 infix 修饰的函数,允许以中缀表示法(省略点号和括号)调用 |
| 值类 | Value Class | 使用 @JvmInline valueClass 声明的内联类,运行时不分配对象,用于类型安全包装 |