Dom Rozwój Co to jest klasa abstrakcyjna? - definicja z techopedia

Co to jest klasa abstrakcyjna? - definicja z techopedia

Spisu treści:

Anonim

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.

Co to jest klasa abstrakcyjna? - definicja z techopedia