Co to jest hierarchia dziedziczenia?
Hierarchia dziedziczenia to układ klas w programowaniu obiektowym, w którym klasy bardziej szczegółowe, czyli klasy pochodne, dziedziczą cechy po klasach bardziej ogólnych, czyli klasach bazowych.
Oznacza to, że klasa potomna może przejąć pola i metody klasy nadrzędnej, a następnie dodać własne elementy lub zmienić działanie odziedziczonych metod.
Przykład logiczny
Można utworzyć ogólną klasę Pojazd, a następnie klasy bardziej szczegółowe:
SamochodRowerMotocykl
Wszystkie te klasy mogą dziedziczyć wspólne cechy z klasy Pojazd, np. predkosc, ruszaj() czy zatrzymaj().
class Pojazd {
int predkosc;
void ruszaj() {
System.out.println("Pojazd rusza");
}
}
class Samochod extends Pojazd {
int liczbaDrzwi;
}
W tym przykładzie Samochod jest klasą pochodną, a Pojazd klasą bazową.
Po co stosuje się hierarchię dziedziczenia?
Hierarchia dziedziczenia pozwala:
- unikać powielania kodu,
- porządkować klasy według relacji ogólne-szczegółowe,
- tworzyć bardziej elastyczne programy,
- wykorzystywać polimorfizm,
- łatwiej rozbudowywać aplikację.
Ważne na egzaminie
Jeśli w pytaniu pojawia się termin hierarchia dziedziczenia, poprawna interpretacja to: struktura klas, w której klasy pochodne dziedziczą cechy i zachowania po klasach bazowych.
Nie jest to zbiór przypadkowych klas ani zestaw metod o tym samym modyfikatorze dostępu.