Junior — Middle
Можеш ли да наведеш пример апстрактне класе у објектно-оријентисаном програмирању?
sobes.tech АИ
Одговор од АИ
Apstraktna klasa je klasa koja nije namenjena za direktno kreiranje instanci, već služi kao osnovna klasa za druge klase. Može sadržavati implementirane metode kao i apstraktne (bez implementacije) koje moraju biti implementirane u podklasama.
Primer apstraktne klase u Javi (Android):
public abstract class Animal {
// Apstraktna metoda — mora biti implementirana u podklasama
public abstract void makeSound();
// Obična metoda sa implementacijom
public void sleep() {
System.out.println("Životinja spava");
}
}
public class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("Vau!");
}
}
// Upotreba
Animal dog = new Dog();
dog.makeSound(); // Ispisaće: Vau!
dog.sleep(); // Ispisaće: Životinja spava
U ovom primeru, Animal je apstraktna klasa sa apstraktnom metodom makeSound(). Klasa Dog nasleđuje Animal i implementira ovu metodu.