Objetos Companheiros Kotlin

Neste artigo, você aprenderá a criar e usar objetos complementares em seu programa Kotlin com a ajuda de exemplos.

Antes de falar sobre os objetos companheiros, vamos dar um exemplo para acessar membros de uma classe.

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

Aqui, criamos um objeto p1 da classe Person para chamar o callMe()método. É assim que as coisas normalmente funcionam.

No entanto, no Kotlin, você também pode chamar o callMe()método usando o nome da classe, ou seja, Pessoa neste caso. Para isso, você precisa criar um objeto complementar marcando a declaração do objeto com a companionpalavra - chave.

Exemplo: objetos complementares

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

Quando você executa o programa, a saída será:

 Me chamo.

No programa, a declaração do objeto de teste é marcada com a palavra-chave companion para criar um objeto complementar. Portanto, é possível chamar o callMe()método usando o nome da classe como:

 Person.callMe ()

O nome do objeto complementar é opcional e pode ser omitido.

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

Se você estiver familiarizado com Java, poderá relacionar objetos companheiros com métodos estáticos (embora a forma como eles funcionam internamente seja totalmente diferente).

Os objetos complementares podem acessar membros privados da classe. Portanto, eles podem ser usados ​​para implementar os padrões do método de fábrica.

Artigos interessantes...