Kotlin 伴生对象(Companion Object)主要用于以下场景:
class MyClass {
companion object {
const val MY_CONSTANT = "SomeValue"
fun myGlobalFunction() {
println("This is a global function.")
}
}
}
class MyClass {
companion object {
fun myUtilityFunction() {
println("This is a utility function.")
}
}
}
class MyClass {
companion object {
fun myFunction() {
println("This is myFunction.")
}
}
}
fun main() {
MyClass.myFunction() // 正确调用伴生对象的 myFunction
}
class MyClass {
companion object {
lateinit var myInstance: MyClass
fun getInstance() {
myInstance = MyClass()
}
}
}
fun main() {
MyClass.getInstance()
MyClass.myInstance.doSomething() // 正确调用 myInstance 的 doSomething 方法
}
总之,Kotlin 伴生对象提供了一种简洁的方式来组织全局函数、常量和命名空间,同时支持惰性初始化。