HOWTO · Kotlin
Crear y usar variables estáticas en Kotlin
Kotlin permite crear variables estáticas, pero de formas ligeramente diferentes. Este artículo presenta cómo crear variables estáticas de Kotlin y usarlas.
En esta página
Cuando declaramos una variable como estática en Java, podemos usarla en diferentes clases sin necesidad de crear objetos. Significa que la memoria de una variable estática se asigna solo una vez.
Dado que JVM no asigna memoria varias veces a una variable estática, se utilizan para una gestión de memoria eficiente; sin embargo, no existe una palabra clave estática en Kotlin. Entonces, ¿cómo declaramos variables estáticas en Kotlin?
Este artículo presenta cómo podemos implementar el concepto de variables estáticas en Kotlin.
Declarar variables estáticas en Kotlin
Si bien Kotlin no tiene la palabra clave static, aún podemos lograr la misma eficiencia de administración de memoria usando:
- el objeto
Companion - la anotación
@JvmStatic
Revisaremos ambos métodos y veremos ejemplos para implementar variables estáticas de Kotlin.
Use el objeto Companion para crear variables estáticas de Kotlin
Podemos usar la palabra clave companion para crear un objeto companion para ayudar a lograr la funcionalidad de variables estáticas. Necesitamos usar la palabra clave companion antes del objeto.
Estos objetos pueden acceder a los miembros privados de una clase; por lo tanto, no hay necesidad de asignar la memoria dos veces. Podemos usar el nombre de la clase para acceder a estos miembros.
Aquí hay un ejemplo del uso de los objetos companion para lograr una funcionalidad estática en Kotlin.
fun main(args: Array<String>) {
println("We are accessing a class variable without creating object.\n" + staticExample.privateVar)
}
class staticExample{
companion object {
val privateVar = "Hi, you are accessing a static variable."
}
}
Producción:
Haga clic aquí para ver la demostración del ejemplo.
Utilice la anotación @JvmStatic para crear variables estáticas de Kotlin
Si bien los miembros del objeto companion son como variables estáticas en Java, tienen una pequeña diferencia. Durante el tiempo de ejecución, los objetos companion siguen siendo miembros de objetos reales; por lo tanto, también pueden implementar interfaces.
Pero una forma de declarar variables estáticas en Kotlin es usando la anotación @JvmStatic. Cuando usamos la anotación @JvmStatic al declarar variables, JVM las considera variables estáticas reales.
Este es un ejemplo del uso de la anotación @JvmStatic para declarar una variable.
fun main(args: Array<String>) {
println("We are accessing a class variable without creating object.\n" + staticExample.privateVar)
}
object staticExample{
@JvmStatic
val privateVar = "Hi, you are accessing a static variable."
}
Producción:
Haga clic aquí para ver la demostración del ejemplo.