Sobes.tech
Junior

Qu'est-ce qu'un objet compagnon en Kotlin?

sobes.tech IA

Réponse de l'IA

Objet lié à une classe, contenant des membres statiques (propriétés et fonctions). Accessible par le nom de la classe.

class MyClass {

    companion object {
        // Propriété statique
        const val TAG = "MyClass"

        // Fonction statique
        fun create(): MyClass {
            return MyClass()
        }
    }
}

// Accès aux membres du companion object
val instance = MyClass.create()
val className = MyClass.TAG

Applications principales :

  • Méthodes de fabrique.
  • Constantes.
  • Fonctions utilitaires statiques.

Il est possible de omettre le mot-clé companion, auquel cas l'objet s'appellera Companion, mais cela est rarement utilisé. Il peut avoir un nom différent de Companion. Implémente des interfaces.