Sobes.tech
Junior — Middle

¿Se puede en Kotlin cambiar la implementación de un método en una clase heredada sin modificar el código fuente de ese método en la clase base?

sobes.tech AI

Respuesta de la IA

Sí, en Kotlin es posible cambiar la implementación de un método en una clase heredada sin modificar el código fuente de la clase base, utilizando el mecanismo de sobrescritura (override). Para ello, el método en la clase base debe estar declarado con el modificador open.

Ejemplo:

open class Base {
    open fun greet() {
        println("Hola desde Base")
    }
}

class Derived : Base() {
    override fun greet() {
        println("Hola desde Derived")
    }
}

fun main() {
    val obj: Base = Derived()
    obj.greet() // Imprimirá: Hola desde Derived
}

De esta manera, sin modificar la clase base, se puede cambiar el comportamiento del método en la clase heredada.