Sobes.tech
Junior — Middle

Как може да се промени поведението на метод в клас, създаден въз основа на друг клас?

sobes.tech AI

Отговор от AI

За да промените поведението на метода в клас, създаден въз основа на друг (наследен) клас, се използва механизмът за презаписване на метода (override). В подклас се обявява метод със същото име и сигнатура като в базовия клас и се реализира нова логика. При извикване на този метод върху обект от подклас, ще се използва именно презаписаната версия.

Пример на Kotlin (Android):

open class Animal {
    open fun sound() {
        println("Някакъв общ звук")
    }
}

class Dog : Animal() {
    override fun sound() {
        println("Лай")
    }
}

fun main() {
    val dog = Dog()
    dog.sound() // Ще изведе: Лай
}

По този начин, презаписването позволява да се промени поведението на наследения метод.