Junior — Middle
Koje su glavne funkcije i primene apstraktnih klasa u objektno-orijentisanom programiranju?
sobes.tech АИ
Одговор од АИ
Apstraktne klase u objektno-orijentisanom programiranju su klase koje nisu namenjene za direktno kreiranje instanci, već služe kao osnovni šabloni za druge klase.
Glavne funkcije apstraktnih klasa:
- Definisanje zajedničkog interfejsa i osnovnog ponašanja za grupu povezanih klasa.
- Mogućnost deklarisanja apstraktnih metoda (bez implementacije), koje moraju biti implementirane od strane podklasa.
- Omogućavaju delimičnu implementaciju funkcionalnosti koju nasleđuju podklase.
Primena:
- Kada je potrebno uspostaviti zajednički ugovor za različite implementacije.
- Kada je deo logike zajednički, a deo mora biti implementiran u naslednicima.
Primer u Javi:
abstract class Animal {
abstract void makeSound(); // apstraktna metoda
void breathe() {
System.out.println("Diše");
}
}
class Dog extends Animal {
void makeSound() {
System.out.println("Vau-vau");
}
}
Ovde, Animal se ne može direktno kreirati, ali se može kreirati Dog koji implementira metodu makeSound.