Junior — Middle
Hoe kan het gedrag van een methode in een klasse die op een andere klasse is gebaseerd, worden gewijzigd?
sobes.tech AI
Antwoord van AI
Om het gedrag van een methode in een klasse die op een andere (geërfde) klasse is gebaseerd te wijzigen, wordt het mechanisme van method overriding gebruikt. In de subclass wordt een methode gedeclareerd met dezelfde naam en handtekening als in de basisklasse, en wordt een nieuwe logica geïmplementeerd. Bij het aanroepen van deze methode op een object van de subclass wordt de overschreven versie gebruikt.
Voorbeeld in Kotlin (Android):
open class Animal {
open fun sound() {
println("Enige generieke geluid")
}
}
class Dog : Animal() {
override fun sound() {
println("Blaf")
}
}
fun main() {
val dog = Dog()
dog.sound() // Drukt af: Blaf
}
Op deze manier maakt overriding het mogelijk om het gedrag van een geërfde methode te wijzigen.