Kotlin 导包规则

1、源文件头部

源文件通常以包声明开头,所有内容(无论是类还是函数)都包含在该包内;若没有指明包,该文件的内容属于无名字的默认

Kotlin 复制代码
package org.example

fun printMessage() { /*......*/ }  // 全名是 org.example.printMessage
class Message { /*......*/ }       // 全名是 org.example.Message
2、导入

import 并不仅限于导入类;也可用它来导入其他声明

  • 顶层函数及属性
  • 在对象声明中声明的函数和属性
  • 枚举常量

导入一个单个名称

Kotlin 复制代码
import org.example.Message // 现在 Message 可以不用限定符访问

导入一个作用域下的所有内容:包、类、对象等

Kotlin 复制代码
import org.example.* // "org.example"中的一切都可访问

使用 as 关键字在本地重命名冲突项来消歧义

Kotlin 复制代码
import org.example.Message // Message 可访问
import org.test.Message as TestMessage // TestMessage 代表"org.test.Message"
3、默认导入

有多个包会默认导入到每个 Kotlin 文件中:

根据目标平台还会导入额外的包:

相关推荐
JohnnyDeng9411 小时前
【Android】ViewModelScope 与协程生命周期管理:告别内存泄漏,掌控异步边界
android·kotlin·mvvm·协程
alexhilton1 天前
Android的Agent优先时代:构建时vs运行时
android·kotlin·android jetpack
JohnnyDeng941 天前
【Android】Android 包体积优化:R8/ProGuard 深度配置全攻略
android·性能优化·kotlin·jetpack
逐光老顽童2 天前
用 Jetpack Compose + MVI 开发了一个 Authenticator 双因素认证应用
架构·kotlin
JohnnyDeng942 天前
【Android】Hilt 依赖注入:原理与最佳实践
android·kotlin·mvvm·hilt
杉氧2 天前
Kotlin 协程深度解析④:架构实战——在 MVVM/MVI 中的进阶应用
android·kotlin
杉氧3 天前
Kotlin 协程深度解析③:流式编程——Flow 的响应式进化
android·kotlin
Coffeeee3 天前
Android16升级,预测性返回适配起来到底难不难
android·程序员·kotlin
QING6183 天前
Kotlin 协程新手指南 —— 结构化并发
android·kotlin·android jetpack
Kapaseker3 天前
为什么 Java 要废弃 Thread.stop()?看完这篇你就懂了
android·kotlin