Oggetti Companion Kotlin

In questo articolo imparerai a creare e utilizzare oggetti associati nel tuo programma Kotlin con l'aiuto di esempi.

Prima di parlare degli oggetti companion, facciamo un esempio per accedere ai membri di una classe.

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

Qui, abbiamo creato un oggetto p1 della classe Person per chiamare il callMe()metodo. È così che funzionano normalmente le cose.

Tuttavia, in Kotlin, puoi anche chiamare il callMe()metodo utilizzando il nome della classe, ovvero Persona in questo caso. Per questo, è necessario creare un oggetto associato contrassegnando la dichiarazione dell'oggetto con companionparola chiave.

Esempio: oggetti companion

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

Quando esegui il programma, l'output sarà:

 Sono chiamato.

Nel programma, la dichiarazione dell'oggetto Test è contrassegnata dalla parola chiave companion per creare un oggetto companion. Quindi, è possibile chiamare il callMe()metodo utilizzando il nome della classe come:

 Person.callMe ()

Il nome dell'oggetto associato è facoltativo e può essere omesso.

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

Se hai familiarità con Java, puoi mettere in relazione gli oggetti associati con metodi statici (anche se il modo in cui funzionano internamente è completamente diverso).

Gli oggetti associati possono accedere ai membri privati ​​della classe. Quindi, possono essere utilizzati per implementare i modelli di metodo di fabbrica.

Articoli interessanti...