Junior — Middle
Cum se poate modifica sau completa comportamentul metodelor la moștenirea unei clase de bază în Kotlin?
sobes.tech AI
Răspuns de la AI
În Kotlin, pentru a modifica sau adăuga comportament metodelor clasei de bază în timpul moștenirii, se folosește cuvântul cheie override. Metoda din clasa de bază trebuie să fie declarată cu modificatorul open pentru a putea fi suprascrisă într-o subclasă.
Exemplu:
open class Base {
open fun greet() {
println("Salut din Base")
}
}
class Derived : Base() {
override fun greet() {
super.greet() // apelarea metodei din clasa de bază
println("Salut din Derived")
}
}
fun main() {
val obj = Derived()
obj.greet()
}
În acest exemplu, metoda greet a clasei Base este suprascrisă în clasa Derived, apelând implementarea originală prin super.greet(), apoi adăugând comportament suplimentar.
Pentru a modifica sau adăuga comportament la o metodă:
- În clasa de bază, metoda trebuie să fie
open. - În subclasă, metoda este marcată cu
override. - Se poate apela metoda originală prin
superpentru a o completa, nu pentru a o înlocui.