Android/kotlin/singleton
提供: 初心者エンジニアの簡易メモ
singletonサンプル
companion objectを使うパターン
MainActivity.kt
HogeSingleton.setName("hogehoge")
Log.i("test", "HogeSingleton.getName()=" + HogeSingleton.getName()) // hogehoge
HogeSingleton.kt
class HogeSingleton {
companion object {
private var name = ""
fun setName(name: String) {
this.name = name
}
fun getName(): String {
return this.name
}
}
}
Classを使うパターン
仮にclass名をInstanceとした。
MainActivity.kt
HogeSingleton.Instance.setName("hogehoge")
Log.i("test", "HogeSingleton.getName()=" + HogeSingleton.Instance.getName()) // hogehoge
HogeSingleton.kt
class HogeSingleton {
object Instance {
private var name = ""
fun setName(name: String) {
this.name = name
}
fun getName(): String {
return this.name
}
}
}
