Sobes.tech
Junior — Middle

როგორ გამოვაცხადოთ Kotlin- ში კლასი ისე, რომ მას შეძლოს მემკვიდრეობითი კლასების გაფართოება?

sobes.tech AI

პასუხი AI-სგან

Kotlin-ში, დეფოლტად, ყველა კლასი არის final, რაც ნიშნავს, რომ ისინი არ შეიძლება იყოს მემკვიდრეობა. მემკვიდრეობის შესაძლებლობის მისაცემად, კლასი უნდა იყოს გამოცხადებული open მოდიფიკატორით.

მაგალითი:

open class Animal {
    open fun sound() {
        println("რაღაც ხმა")
    }
}

class Dog : Animal() {
    override fun sound() {
        println("ხარხარი")
    }
}

აქ, Animal გამოცხადებულია როგორც open, რაც საშუალებას აძლევს Dog კლასს მემკვიდრეობა მიიღოს და მეთოდები გადახაზოს.