亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

Kotlin伴生對象如何實現單例

小樊
83
2024-11-01 21:55:04
欄目: 編程語言

在 Kotlin 中,你可以使用伴生對象的 object 關鍵字來創建一個單例。由于伴生對象在類加載時就被初始化,所以它們是線程安全的,并且只能有一個實例。下面是一個簡單的示例:

class Singleton {
    companion object {
        // 使用懶加載的方式初始化單例
        val instance: Singleton by lazy {
            Singleton()
        }
    }
}

fun main() {
    val singleton1 = Singleton.instance
    val singleton2 = Singleton.instance

    // 由于單例的懶加載特性,這里的輸出順序可能會有所不同,但結果都是相同的
    println("singleton1: $singleton1")
    println("singleton2: $singleton2")
}

在這個示例中,我們創建了一個名為 Singleton 的類,并在其中定義了一個伴生對象。伴生對象中有一個名為 instance 的屬性,它使用 lazy 關鍵字進行懶加載。這意味著 instance 屬性將在第一次訪問時才被初始化,從而確保單例的線程安全。

main 函數中,我們分別訪問了兩次 Singleton.instance,由于單例的懶加載特性,這里的輸出順序可能會有所不同,但結果都是相同的。這表明我們成功地實現了一個單例模式。

0
七台河市| 徐汇区| 阿拉善左旗| 法库县| 玉树县| 双流县| 朝阳市| 措美县| 深水埗区| 渝北区| 泾源县| 许昌县| 慈溪市| 丹凤县| 镇原县| 永州市| 荆门市| 兴化市| 方正县| 永胜县| 肃北| 武威市| 康平县| 汾西县| 屏南县| 广西| 元阳县| 台江县| 东方市| 凯里市| 沿河| 天镇县| 乌拉特后旗| 阳东县| 贵州省| 元朗区| 海口市| 华亭县| 吴川市| 连城县| 迁西县|