En este artículo, aprenderá a crear y utilizar objetos complementarios en su programa Kotlin con la ayuda de ejemplos.
Antes de hablar sobre los objetos complementarios, tomemos un ejemplo para acceder a los miembros de una clase.
class Person ( fun callMe() = println("I'm called.") ) fun main(args: Array) ( val p1 = Person() // calling callMe() method using object p1 p1.callMe() )
Aquí, creamos un objeto p1 de la clase Person para llamar al callMe()
método. Así es como funcionan las cosas normalmente.
Sin embargo, en Kotlin, también puede llamar al callMe()
método usando el nombre de la clase, es decir, Persona en este caso. Para eso, necesita crear un objeto complementario marcando la declaración del objeto con una companion
palabra clave.
Ejemplo: objetos complementarios
class Person ( companion object Test ( fun callMe() = println("I'm called.") ) ) fun main(args: Array) ( Person.callMe() )
Cuando ejecute el programa, la salida será:
Me llaman.
En el programa, la declaración del objeto de prueba se marca con la palabra clave compañero para crear un objeto complementario. Por lo tanto, es posible llamar al callMe()
método usando el nombre de la clase como:
Person.callMe ()
El nombre del objeto complementario es opcional y se puede omitir.
class Person ( // name of the companion object is omitted companion object ( fun callMe() = println("I'm called.") ) ) fun main(args: Array) ( Person.callMe() )
Si está familiarizado con Java, puede relacionar los objetos complementarios con métodos estáticos (aunque su funcionamiento interno es totalmente diferente).
Los objetos complementarios pueden acceder a miembros privados de la clase. Por tanto, se pueden utilizar para implementar los patrones del método de fábrica.