W programowaniu obiektowym (OOP) system modelowany jest za pomocą obiektów. Te obiekty są tworzone za pomocą klasy. Klasa to plan lub opis służący do tworzenia obiektu. Tworzenie obiektów jest również znane jako tworzenie instancji obiektów. Każdy obiekt komunikuje się z innymi obiektami. Program lub oprogramowanie można opracować za pomocą programowania obiektowego. Dziedziczenie jest ważną koncepcją w OOP. Poprawia możliwość ponownego użycia kodu. Zamiast implementować program od samego początku, pozwala on dziedziczyć właściwości i metody już istniejącej klasy do nowej klasy. Pomaga uczynić program łatwiejszym do zarządzania. Nadklasa i podklasa są dwoma terminami związanymi z dziedziczeniem. W tym artykule omówiono różnicę między nadklasą a podklasą. The kluczowa różnica między Superklasą a podklasą jest to Nadklasa to istniejąca klasa, z której pochodzą nowe klasy, podczas gdy podklasa jest nową klasą, która dziedziczy właściwości i metody nadklasy.
1. Przegląd i kluczowa różnica
2. Co to jest superklasa
3. Co to jest podklasa
4. Podobieństwa między nadklasą i podklasą
5. Porównanie obok siebie - superklasa vs podklasa w formie tabelarycznej
6. Podsumowanie
W Dziedziczeniu istniejąca klasa, z której pochodzą nowe klasy, jest znana jako Nadklasa. Jest również znany jako klasa nadrzędna lub klasa podstawowa.
Istnieją różne typy dziedziczenia. Są zilustrowane przy użyciu następujących przykładów. Rozważ A B i C jako klasy.
Rysunek 01: Rodzaje dziedziczenia
Rysunek 02: Dziedziczenie hybrydowe
Zgodnie z powyższymi schematami nadklasy różnią się w zależności od każdego rodzaju dziedziczenia. W dziedziczeniu jednopoziomowym A jest nadklasą. W dziedziczeniu wielopoziomowym A jest nadklasą dla B, a B jest nadklasą dla C. W hierarchicznym dziedzictwie A jest nadklasą zarówno dla B, jak i C. W przypadku wielokrotnego dziedziczenia zarówno A, jak i B są nadklasami dla C.
Dziedziczenie hybrydowe to połączenie dziedziczenia wielopoziomowego i wielokrotnego. Na schemacie po lewej stronie A to nadklasa dla B, C i B, C są nadklasami dla D. Na schemacie po prawej stronie A to superklasa dla B i B, D to nadklasy dla C.
Zapoznaj się z poniższym programem napisanym w Javie.
Rysunek 03: Program dziedziczenia w Javie
Zgodnie z powyższym programem klasa A ma metody sum () i sub (). Klasa B ma metodę multiply (). Klasa B rozszerza klasę A. Dlatego właściwości i metody klasy A są dostępne dla klasy B. Dlatego klasa A jest nadklasą. Typ referencyjny klasy B jest brany do utworzenia obiektu. Zatem wszystkie metody, takie jak sum (), sub () i multiply () są dostępne dla obiektu. Jeśli do tworzenia obiektów używany jest typ odniesienia Superclass, członkowie klasy B nie będą dostępni. na przykład A obj = nowy B (); Dlatego odwołanie do klasy nadrzędnej nie może wywołać metody multiply (), ponieważ metoda ta należy do klasy B..
Zgodnie z powyższymi diagramami podklasy różnią się w zależności od każdego typu dziedziczenia. W przypadku pojedynczego dziedziczenia B jest podklasą. W dziedziczeniu wielopoziomowym B jest podklasą A, a C jest podklasą B. W Hierarchicznym dziedziczeniu B i C są podklasami A. W przypadku wielokrotnego dziedziczenia C jest podklasą A i B.
W dziedziczeniu hybrydowym schemat po lewej stronie, B i C są podklasami A. D jest podklasą B i C. Na schemacie po prawej stronie B jest podklasą dla A. C jest podklasą B i D.
Zgodnie z powyższym programem dziedziczenia klasa B rozszerza klasę A. Dlatego wszystkie właściwości i metody klasy A są dostępne dla klasy B. Klasa B jest nową klasą, która dziedziczy od klasy A. Jest ona znana jako podklasa. Jest również znany jako klasa potomna lub klasa pochodna. Klasa B ma metodę multiply () i może również uzyskiwać dostęp do metod sum () i sub () klasy A za pomocą dziedziczenia.
Superklasa kontra podklasa | |
Podczas implementacji dziedziczenia istniejącą klasą, z której pochodzą nowe klasy, jest nadklasa. | Podczas implementacji dziedziczenia klasą, która dziedziczy właściwości i metody z nadklasy, jest podklasa. |
Synonimy | |
Nadklasa jest znana jako klasa podstawowa, klasa nadrzędna. | Podklasa jest znana jako klasa pochodna, klasa potomna. |
Funkcjonalność | |
Nadklasa nie może korzystać z właściwości i metod podklasy. | Podklasa może korzystać z właściwości i metod nadklasy. |
Dziedziczenie na jednym poziomie | |
Istnieje jedna nadklasa. | Istnieje jedna podklasa. |
Dziedziczenie hierarchiczne | |
Istnieje jedna nadklasa | Istnieje wiele podklas. |
Wielokrotne dziedziczenie | |
Istnieje wiele superklas. | Istnieje jedna podklasa. |
Dziedziczenie jest koncepcją OOP. Umożliwia korzystanie z właściwości i metod istniejącej klasy przez nową klasę. Dziedziczona klasa to nadklasa, a klasa pochodna to podklasa. Różnica między nadklasą a podklasą polega na tym, że nadklasa jest istniejącą klasą, z której pochodzą nowe klasy, podczas gdy podklasa jest nową klasą, która dziedziczy właściwości i metody nadklasy.
Możesz pobrać wersję PDF tego artykułu i używać go do celów offline zgodnie z cytatem. Pobierz wersję PDF tutaj Różnica między superklasą i podklasą
1. „Dziedziczenie w Javie - Javatpoint”. The Point, dostępny tutaj
2.tutorialspoint.com. „Dziedziczenie Java”. The Point, dostępny tutaj