Quel est le sens de "compagnon de l'objet"? Jusqu'à présent, je l'ai utilisé pour remplacer Java static
quand j'en ai besoin.
Je suis confondu avec:
- Pourquoi est-il appelé "compagnon"?
- Ça veut dire que pour créer plusieurs statique de propriétés, j'ai pour le groupe ensemble à l'intérieur d'
companion object
bloc? - Pour créer instantanément une instance du singleton dont l'étendue correspond à une classe, j'écris souvent
:
companion object {
val singleton by lazy { ... }
}
ce qui semble être un unidiomatic façon de faire. Quelle est la meilleure façon de faire?