Dzięki temu figura definiuje pewien interfejs dla klas wywodzących się od niej.
Klasy abstrakcyjne w różnych językach Zobacz przykłady klas abstrakcyjnych na stronie Wikibooks
C++ W C++ klasą abstrakcyjną jest klasa, która posiada zadeklarowaną co najmniej jedną metodę czysto wirtualną. Każda klasa, która dziedziczy po klasie abstrakcyjnej i sama nie chce być abstrakcyjną, musi implementować wszystkie odziedziczone metody czysto wirtualne.
Java W Javie klasę abstrakcyjną możemy stworzyć za pomocą słowa kluczowego abstract. W odróżnieniu od interfejsu pozwala ona na zdefiniowanie pewnych właściwości obiektu oraz napisanie szczegółowej implementacji wybranych metod.
C# W C# klasą abstrakcyjną jest klasa, która została zadeklarowana jako abstrakcyjna za pomocą słowa kluczowego abstract.
Właściwości Klasa abstrakcyjna w Javie nie musi posiadać metod czysto wirtualnych aby być abstrakcyjną, jednak takie użycie klasy abstrakcyjnej określa klasę jako nieinstancjowalną i jest rzadziej spotykane. Jeśli co najmniej jedna metoda w klasie zostanie zadeklarowana jako czysto wirtualna (abstrakcyjna), to ta klasa musi zostać zadeklarowana jako abstrakcyjna. Jeżeli wszystkie metody klasy są czysto wirtualne, zaleca się, aby taką klasę zadeklarować jako interfejs klasy.
Przypisy
Kategoria:Programowanie obiektowe