鉴于以下代码:
class Foo {
companion object {
lateinit var names: Array<String>
}
init {
names = arrayOf("George", "Keith", "Martha", "Margret")
}
}
如果我创建了两个实例Foo
:
var foo1 = Foo();
var foo2 = Foo();
将被names
初始化/分配两次,因此有任何后续Foo
初始化?
我的意图是有一个简单的静态变量来names
保存这些预定义的名称。
更新:
这是假设我不想拥有:var names: arrayOf("George", "Keith", "Martha", "Margret")
内部伴随对象。