Loading AI tools
Z Wikipedii, wolnej encyklopedii
Klasa abstrakcyjna – klasa, która nie może mieć swoich reprezentantów pod postacią obiektów[1]. Zależnie od użytego języka programowania klasy abstrakcyjne tworzy się na różne sposoby.
Klasa abstrakcyjna jest pewnym uogólnieniem innych klas (na przykład dla występujących w rzeczywistości obiektów), lecz sama jako taka nie istnieje. Ustalmy, że przez "figurę" będziemy rozumieć "koło", "kwadrat" lub "trójkąt". Te obiekty matematyczne mogą być reprezentowane przez pewne klasy. Obiekty te posiadają już konkretne właściwości takie jak promień (dla konkretnego koła) czy długość boku (dla konkretnego kwadratu). Klasy tych obiektów wywodzą się z pewnej uogólnionej klasy określanej jako po prostu figura. Jednak nie jesteśmy w stanie określić jaką konstrukcję miałby obiekt klasy figura, ponieważ figura geometryczna jako taka nie istnieje. Istnieją natomiast wywodzące się od niej klasy koło czy kwadrat. Dodatkowo oczywistym jest, że figura nie posiada konkretnej wartości pola czy obwodu, jednak już na tym etapie wiemy, że każda figura tak zdefiniowana (koło, kwadrat czy trójkąt) posiada pole i obwód, które będzie różnie obliczane dla różnych figur. Dzięki temu figura definiuje pewien interfejs dla klas wywodzących się od niej.
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.
W Javie klasę abstrakcyjną możemy stworzyć za pomocą słowa kluczowego abstract[2]. W odróżnieniu od interfejsu pozwala ona na zdefiniowanie pewnych właściwości obiektu oraz napisanie szczegółowej implementacji wybranych metod.
W C# klasą abstrakcyjną jest klasa, która została zadeklarowana jako abstrakcyjna za pomocą słowa kluczowego abstract.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.