Dziedziczenie klas
Spróbujmy skonstruować klasę, która opisuje figury geometryczne. Pojawia
się problem opisując koło i prostokąt, gdyż nie bardzo można tymi samymi
zmiennymi opisać obie figury. Nie mówiąc już o obliczeniu pola powierzchni lub
obwodu. Jednakże wszystkie te figury mają pole. Zdefiniujmy klasę która posiada
jedno pole:
class FIGURA
{
double pole;
};
Mamy klasę bazową. Ale dalej nie wiemy czy figura jest kołem czy
kwadratem. Zdefiniujmy sobie klasy pochodne, które będą dodtkowo opisywać
figurę. Klasy pochodne będą miały pola i metody klasy bazowej oraz te które my
dodatkowo dodamy.
class KOLO: public FIGURA
{
double promien;
void pole_powierzchni();
};
class TROJKAT: public FIGURA
{
double a,h;
void pole_powierzchni();
};
class KWADRAT: public FIGURA
{
double a;
void pole_powierzchni();
};
W tym momencie mamy wystarczające dane aby obliczyć pole powierzchni
każdej z figur. Klasy można dziedziczyć wielokrotnie. Tzn, klasa pochodna może
być klasą bazową dla innej klasy. Teraz tylko trzeba oprogramować te klasy,
przypisać polom wartości i wywołać metody. Metody powinieneś już potrafić
skonstruować samodzielnie.Klasa pohodna może mieć kilka klas bazowych.
Trzeba podać liste klas bazowych przy definicji klasy. W klasach bazowych nie
mogą wystąpić pola i funkcje o tych samych nazwach. Umiejscowienie dwukropka za
nazwą klasy wskazuje na obecność listy klas bazowych. W naszym przypadku była
tyklo jedna. Powróć gdy przeczytasz o ochronie danych!!! Idż tam
Każda klasa bazowa musi być zdefiniowana przed definicją klasy
pochodnej. Klasę bazową można deklarować jako publiczną, chronioną lub prywatną.
Pola i metody dostępne w klasie bazowej będą z takim atrybutem w klasie
pochodnej.
Wyszukiwarka
Podobne podstrony:
Ćwiczenie 4 Dziedziczenie klasUSTAWA O OCHRONIE OSÓB I MIENIA Z 22 SIERPNIA 1997 RE 22 Of Domine in auxiliumBAZA PYTAŃ 22ustawa 22 poz 251 z 2001r22 Ostrzeganie i alarmowanie22 Planowanie podstawowego żywienia dietetycznegowięcej podobnych podstron