Junior — Middle
¿En qué se diferencian los tipos Object en Java y Any en Kotlin en términos de su propósito y uso?
sobes.tech AI
Respuesta de la IA
En Java, el tipo Object es la clase base para todas las clases, de la cual heredan todos los objetos. Se usa para representar cualquier objeto, pero no puede contener tipos primitivos directamente.
En Kotlin, el tipo Any es el equivalente a Object, la clase base para todas las clases, pero a diferencia de Java, Kotlin separa Any y Any? (nullable). Any no puede contener null, pero Any? sí puede. Además, Kotlin tiene tipos separados para primitivos, pero se convierten automáticamente en objetos cuando es necesario.
Ejemplo:
fun printAny(value: Any) {
println(value.toString())
}
printAny(123) // Int se convierte automáticamente en Any
printAny("texto") // String, que hereda de Any
Por lo tanto, Object en Java es una clase, y Any en Kotlin es un tipo base que no permite null, lo que aumenta la seguridad de tipos.