「コンパニオンオブジェクト」の意図する意味は何ですか?これまでのstaticところ、必要なときにJavaの代わりに使用しています。
私は混乱しています:
- なぜ「コンパニオン」と呼ばれているのですか?
- 複数の静的プロパティを作成するには、
companion objectブロック内でグループ化する必要があるということですか? - クラスをスコープとするシングルトンインスタンスを即座に作成するために、
:
companion object {
val singleton by lazy { ... }
}
これは、一義的な方法のようです。より良い方法は何ですか?