Spisu treści:
Definicja - Co oznacza klasa abstrakcyjna?
W językach programowania klasa abstrakcyjna jest klasą ogólną (lub typem obiektu) wykorzystywaną jako podstawa do tworzenia określonych obiektów zgodnych z protokołem lub zestawem operacji, które obsługuje. Klasy abstrakcyjne nie są tworzone bezpośrednio.
Klasy abstrakcyjne są przydatne podczas tworzenia hierarchii klas, które modelują rzeczywistość, ponieważ umożliwiają określenie niezmiennego poziomu funkcjonalności w niektórych metodach, ale pozostawiają implementację innych metod, dopóki nie będzie wymagana konkretna implementacja tej klasy (klasa pochodna).
Techopedia wyjaśnia Klasa abstrakcyjna
W językach programowania obiektowego klasy (OOP) klasy reprezentują obiekty w dziedzinie problemu, który oprogramowanie ma rozwiązać. Klasy obejmują kolekcje atrybutów (właściwości) i zachowań (metod), które mogą być oparte na wcześniej zdefiniowanych klasach. Programiści używają dziedziczenia do uzyskania konkretnej implementacji klas abstrakcyjnych. Klasy pochodzące z klas abstrakcyjnych nazywane są klasami pochodnymi. Gdy zasada ta jest stosowana wiele razy z rzędu, powstaje hierarchia klas. W tym kontekście klasy abstrakcyjne stanowią podstawę tej hierarchii i są używane do wymuszania metod, które należy zastąpić w klasach pochodnych, co pozwala uniknąć potencjalnych błędów w czasie wykonywania.
Klasa abstrakcyjna ma co najmniej jedną metodę abstrakcyjną. Metoda abstrakcyjna nie będzie zawierała żadnego kodu w klasie bazowej; kod zostanie dodany do jego klas pochodnych. Metodę abstrakcyjną w klasie pochodnej należy zaimplementować z tym samym modyfikatorem dostępu, liczbą i rodzajem argumentu oraz z tym samym typem zwrotu, co klasa podstawowa. Obiekty typu klasy abstrakcyjnej nie mogą zostać utworzone, ponieważ kod do utworzenia instancji obiektu typu klasy abstrakcyjnej spowoduje błąd kompilacji.