Sobes.tech
Junior

Чӣ гуна метавон нишон дод, ки усулҳои синфи абстрактӣ ҳатмӣ барои иваз кардан мебошанд?

sobes.tech AI

Ҷавоб аз AI

Дар Android (Java/Kotlin), синфи абстракт метавонад усулҳои абстрактиро дар бар гирад, яъне усулҳое, ки бе иҷроиш мебошанд ва бояд дар синфҳои зерӣ иваз карда шаванд. Агар синфи зерӣ ин усулҳоро иҷро накунад, код иҷро намешавад.

Масалан дар Java:

abstract class Animal {
    // Усули абстрактӣ, ки бояд иваз карда шавад
    abstract void makeSound();
}

class Dog extends Animal {
    @Override
    void makeSound() {
        System.out.println("Гав-гав");
    }
}

// Агар кӯшиш кунед, ки синфро бе иҷрои makeSound() созед, хатои компилятсия пайдо мешавад

Бинобар ин, мавҷудияти усули абстрактӣ ҳамаи синфҳои зериро маҷбур мекунад, ки онро иҷро кунанд, ки полиморфизм ва риояи принсипҳои SOLID-ро таъмин мекунад.