Cuándo y dónde usar el objeto complementario de Kotlin
-
Métodos
estáticos
de Java -
Objeto
compañero
de Kotlin -
¿Cuándo debemos usar un objeto
compañero
de Kotlin?
En cualquier lenguaje de programación orientado a objetos como Kotlin, Java o C#, tenemos que crear objetos de una clase para acceder a sus miembros. En Kotlin, se verá así:
class className{
fun funName() = // code will come here
}
fun main(){
val obj = className()
obj.funName() // calling the function using the class's object
}
Sin embargo, existe una forma de acceder al método de una clase sin crear un objeto. Y ahí es donde entran en escena los objetos estático
de Java y compañero
de Kotlin.
En este artículo, aprenderemos sobre el objeto compañero
y cómo usarlo en Kotlin. Pero antes de entrar en eso, veamos un ejemplo de los métodos estáticos
de Java.
Métodos estáticos
de Java
Java permite seguir un enfoque de programación orientado a objetos sin crear ningún objeto. Lo hace con el uso de objetos o instancias estáticas
.
La palabra clave static
permite la creación de variables o métodos estáticos dentro de una clase. Estas variables o métodos permanecen constantes y no podemos cambiarlos después de la inicialización.
El uso más significativo de la palabra clave static
en Java es la gestión de memoria. Podemos acceder a variables y métodos estáticos sin crear un objeto, lo que ahorra memoria.
Podemos acceder a tales métodos con la ayuda de nombres de clase.
El programa Java a continuación demuestra lo mismo. El cubeNumber()
en este programa es un método estático.
Tomará un parámetro entero y devolverá su cubo.
import java.util.*;
public class Example {
public static void main(String[] args) {
int res = Example.cubeNumber(3);
System.out.println("Cube of 3 is: " + res);
}
public static int cubeNumber(int i) {
return i * i * i;
}
}
Como vemos, el cubeNumber()
es el método estático en el ejemplo anterior. Por lo tanto, podríamos llamarlo usando el nombre de la clase.
Objeto compañero
de Kotlin
Java tiene métodos estáticos
, pero no hay estáticos
en Kotlin. Todavía hay una manera de crear tales variables, pero el enfoque es diferente.
En Kotlin, usamos la palabra clave objeto compañero
para crear tales métodos.
La palabra clave compañero
funcionará igual que la palabra clave estática
en Java. Permitirá el acceso a los métodos creados con la palabra clave compañero
sin ningún objeto.
Aquí hay un ejemplo para demostrar el uso de objetos compañeros
en Kotlin. En este ejemplo, crearemos una clase Empleado
.
Luego crearemos una función para imprimir el nombre del empleado usando la palabra clave compañero
y acceder a ella sin el objeto de la clase.
class Employee {
companion object {
fun printName() = println("Hi, my name is David.")
}
}
fun main(args: Array<String>) {
Employee.printName()
}
También podemos omitir el nombre de la función. En ese caso, podemos usar el nombre Compañero
.
¿Cuándo debemos usar un objeto compañero
de Kotlin?
El mejor escenario para usar un objeto compañero
de Kotlin es cuando no interfiere con el estado del objeto de la clase. Esto significa que si está utilizando funciones puras o valores finales a los que se debe acceder desde fuera de la clase en sí, entonces puede usar el objeto compañero
de Kotlin.
Sin embargo, si el objeto interfiere con el estado del objeto de la clase, se recomienda no utilizar el objeto compañero
. Esto se debe a que su uso puede dar lugar a numerosos errores.
Kailash Vaviya is a freelance writer who started writing in 2019 and has never stopped since then as he fell in love with it. He has a soft corner for technology and likes to read, learn, and write about it. His content is focused on providing information to help build a brand presence and gain engagement.
LinkedIn