Junior
¿Cómo crear una variable estática en Kotlin?
sobes.tech AI
Respuesta de la IA
En Kotlin no hay un equivalente directo a la palabra clave static de Java. En su lugar, se utilizan:
companion object: Para crear miembros "estáticos" de la clase (campos y métodos). Están vinculados a la clase, no a una instancia específica.- Funciones y propiedades de paquete: Se declaran a nivel superior del archivo (
Top-level declarations) y son accesibles desde cualquier lugar sin necesidad de calificación con el nombre de la clase.
Ejemplo con companion object:
class MyClass {
companion object {
const val TAG = "MyClass" // Constante en tiempo de compilación (como final static en Java)
var instanceCount = 0 // Variable vinculada a la clase
}
init {
instanceCount++
}
}
Ejemplo con propiedades de paquete:
// En el archivo MyGlobals.kt
const val GLOBAL_CONST = "This is a global constant"
var globalCounter = 0
fun incrementGlobalCounter() {
globalCounter++
}
Diferencias y elección:
companion objectes adecuado para miembros lógicamente relacionados con la clase.- Los miembros de paquete son útiles para utilidades generales, constantes o variables no vinculadas a una clase específica.
- Para constantes en tiempo de compilación, use
const valdentro decompanion objecto como declaración de paquete.