Kotlin伴生對(duì)象如何訪問(wèn)私有成員

小樊
81
2024-11-01 21:49:04

在 Kotlin 中,伴生對(duì)象(companion object)是一個(gè)單例對(duì)象,它用于為類(lèi)提供靜態(tài)方法和屬性。要訪問(wèn)類(lèi)的私有成員(private members),你可以使用伴生對(duì)象的 call 函數(shù)。call 函數(shù)可以訪問(wèn)類(lèi)的私有成員,因?yàn)樗鼘?shí)際上是類(lèi)的靜態(tài)方法。

以下是一個(gè)示例:

class MyClass {
    private val myPrivateProperty = "I am private"

    companion object {
        fun accessPrivateMembers() {
            val instance = MyClass()
            println(instance.myPrivateProperty) // 輸出 "I am private"
        }
    }
}

fun main() {
    MyClass.accessPrivateMembers()
}

在這個(gè)例子中,我們有一個(gè)名為 MyClass 的類(lèi),它有一個(gè)私有屬性 myPrivateProperty。我們?cè)诎樯鷮?duì)象中定義了一個(gè)名為 accessPrivateMembers 的函數(shù),該函數(shù)訪問(wèn)了 myPrivateProperty 并打印了它的值。在 main 函數(shù)中,我們調(diào)用了 accessPrivateMembers 函數(shù)來(lái)訪問(wèn)私有成員。

0