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 კლასს მემკვიდრეობა მიიღოს და მეთოდები გადახაზოს.