20. Dziedziczenie i polimorfizm

Podobnie jak w Javie i innych językach obiektowych, klasy mogą dziedziczyć własności po innych klasach — nazywamy je wtedy klasami pochodnymi (ang. derived class, subclass), a klasy, z których dziedziczą, ich klasami bazowymi (ang. base class, superclass). Klasy, które nie dziedziczą z żadnej innej klasy, nazywamy pierwotnymi. W odróżnieniu od Javy i C#, klasy w C++ mogą dziedziczyć z wielu klas bazowych — pierwotnych lub pochodnych: jest to wielodziedziczenie , zwane też dziedziczeniem wielobazowym (którego lepiej unikać, prowadzi bowiem do kodu zawiłego i trudnego do modyfikacji). W tym rozdziale zapoznamy się z podstawowymi własnościami dziedziczenia w języku C++.



Podrozdziały

T.R. Werner, 25 lutego 2017; 22:31