Objets compagnons Kotlin

Dans cet article, vous apprendrez à créer et à utiliser des objets compagnons dans votre programme Kotlin à l'aide d'exemples.

Avant de parler des objets compagnons, prenons un exemple pour accéder aux membres d'une classe.

 class Person ( fun callMe() = println("I'm called.") ) fun main(args: Array) ( val p1 = Person() // calling callMe() method using object p1 p1.callMe() ) 

Ici, nous avons créé un objet p1 de la classe Person pour appeler la callMe()méthode. C'est ainsi que les choses fonctionnent normalement.

Cependant, dans Kotlin, vous pouvez également appeler la callMe()méthode en utilisant le nom de la classe, c'est-à-dire Person dans ce cas. Pour cela, vous devez créer un objet compagnon en marquant la déclaration d'objet avec un companionmot-clé.

Exemple: objets compagnons

 class Person ( companion object Test ( fun callMe() = println("I'm called.") ) ) fun main(args: Array) ( Person.callMe() ) 

Lorsque vous exécutez le programme, la sortie sera:

 Je suis appelé.

Dans le programme, la déclaration d'objet de test est marquée avec le mot-clé compagnon pour créer un objet compagnon. Par conséquent, il est possible d'appeler la callMe()méthode en utilisant le nom de la classe comme:

 Person.callMe ()

Le nom de l'objet compagnon est facultatif et peut être omis.

 class Person ( // name of the companion object is omitted companion object ( fun callMe() = println("I'm called.") ) ) fun main(args: Array) ( Person.callMe() )

Si vous êtes familier avec Java, vous pouvez associer des objets compagnons à des méthodes statiques (même si leur fonctionnement interne est totalement différent).

Les objets compagnons peuvent accéder aux membres privés de la classe. Par conséquent, ils peuvent être utilisés pour implémenter les modèles de méthode d'usine.

Articles intéressants...