Junior — Middle
Como é que se pode modificar ou complementar o comportamento dos métodos ao herdar de uma classe base em Kotlin?
sobes.tech IA
Resposta da IA
No Kotlin, para modificar ou acrescentar comportamento aos métodos de uma classe base ao herdar, usa-se a palavra-chave override. O método na classe base deve ser declarado com o modificador open para que possa ser sobrescrito numa subclasse.
Exemplo:
open class Base {
open fun greet() {
println("Olá do Base")
}
}
class Derived : Base() {
override fun greet() {
super.greet() // chamada ao método da classe base
println("Olá do Derived")
}
}
fun main() {
val obj = Derived()
obj.greet()
}
Neste exemplo, o método greet da classe Base é sobrescrito na classe Derived, chamando a implementação original através de super.greet(), e depois adicionando comportamento adicional.
Assim, para modificar ou acrescentar comportamento a um método:
- Na classe base, o método deve ser
open. - Na subclasse, o método é marcado com
override. - Pode-se chamar o método original através de
superpara complementar, e não substituir, o comportamento.