Sobes.tech
Junior — Middle

Hogyan lehet megváltoztatni egy módszer viselkedését egy másik osztály alapján létrehozott osztályban?

sobes.tech MI

Válasz az MI-től

Egy másik (örökölt) osztály alapján létrehozott osztály metódusának viselkedését a override mechanizmus segítségével lehet megváltoztatni. Az alosztályban ugyanazzal a névvel és szignatúrával deklarálunk egy metódust, mint az alap osztályban, és új logikát valósítunk meg. Ennek a metódusnak a hívásakor az alosztály példányánál az override-olt változat lesz használatban.

Kotlin (Android) példával:

open class Animal {
    open fun sound() {
        println("Valamilyen általános hang")
    }
}

class Dog : Animal() {
    override fun sound() {
        println("ugatás")
    }
}

fun main() {
    val dog = Dog()
    dog.sound() // Kiírja: ugatás
}

Így az override lehetővé teszi, hogy megváltoztassuk az örökölt metódus viselkedését.