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() // 正確調(diào)用伴生對象的 myFunction
}
class MyClass {
companion object {
lateinit var myInstance: MyClass
fun getInstance() {
myInstance = MyClass()
}
}
}
fun main() {
MyClass.getInstance()
MyClass.myInstance.doSomething() // 正確調(diào)用 myInstance 的 doSomething 方法
}
總之,Kotlin 伴生對象提供了一種簡潔的方式來組織全局函數(shù)、常量和命名空間,同時支持惰性初始化。