companion-关于kotlin中的Static

Kotlin 复制代码
companion object {
        const val PARAMETER_ID: Short = 506
        const val NULL_NAME: String = ""
        const val MAP_NAME_LENGTH: Int = 21
        const val SITE_NAME_LENGTH: Int = 21
    }

这段代码定义了一个 companion object,其作用是在 Kotlin 类中创建静态成员,即类的伴生对象。这些成员可以在不创建类实例的情况下直接通过类名访问。

companion object

  • 在 Kotlin 中,companion object 用来定义与类关联的静态成员。它类似于 Java 中的 static 成员,但 Kotlin 不支持 static 关键字,因此使用伴生对象来实现类似功能
  • 伴生对象里的成员可以通过类名直接访问,不需要创建类的实例。
Kotlin 复制代码
class ExampleClass {
    companion object {
        const val PARAMETER_ID: Short = 506
        const val NULL_NAME: String = ""
        const val MAP_NAME_LENGTH: Int = 21
        const val SITE_NAME_LENGTH: Int = 21
    }
}

fun main() {
    // 直接通过类名访问 companion object 中的常量
    println(ExampleClass.PARAMETER_ID)         // 输出: 506
    println(ExampleClass.NULL_NAME)            // 输出: ""
    println(ExampleClass.MAP_NAME_LENGTH)      // 输出: 21
    println(ExampleClass.SITE_NAME_LENGTH)     // 输出: 21
}
相关推荐
androidwork1 天前
Kotlin与Android Studio开发环境配置指南
开发语言·kotlin·android studio
stevenzqzq1 天前
kotlin 01flow-StateFlow 完整教程
android·开发语言·kotlin·flow
androidwork1 天前
使用Kotlin Flow实现Android应用的响应式编程
android·开发语言·kotlin
stevenzqzq1 天前
kotlin 数据类
android·开发语言·kotlin
大G哥1 天前
Kotlin Lambda语法错误修复
android·java·开发语言·kotlin
androidwork2 天前
Kotlin Android工程Mock数据方法总结
android·开发语言·kotlin
悠哉清闲2 天前
kotlin一个函数返回多个值
kotlin
每次的天空2 天前
Android学习总结之kotlin协程面试篇
android·学习·kotlin
MyhEhud2 天前
Kotlin zip 函数的作用和使用场景
开发语言·windows·kotlin
androidwork2 天前
Kotlin Coroutine与Retrofit网络层构建指南
开发语言·kotlin·retrofit