V Object Oriented Programming (OOP) je systém modelován pomocí objektů. Tyto objekty jsou vytvářeny pomocí třídy. Třída je plán nebo popis k vytvoření objektu. Vytváření objektů se také nazývá instanci objektů. Každý objekt komunikuje s jinými objekty. Program nebo software lze vyvinout pomocí objektově orientovaného programování. Dědičnost je v OOP hlavním pojmem. Zlepšuje opakovatelnost kódu. Spíše než implementovat program od začátku umožňuje zdědění vlastností a metod již existující třídy nové třídě. Pomáhá to, aby byl program lépe zvládnutelný. Superclass a Subclass jsou dva pojmy, které se vztahují k dědičnosti. Tento článek popisuje rozdíl mezi Superclass a Subclass. klíčový rozdíl mezi Superclass a Subclass je to Superclass je stávající třída, ze které jsou nové třídy odvozeny, zatímco Subclass je nová třída, která dědí vlastnosti a metody Superclass.
1. Přehled a klíčový rozdíl
2. Co je Superclass
3. Co je podtřída
4. Podobnosti mezi vyšší třídou a podtřídou
5. Porovnání bok po boku - Superclass vs Subclass v tabulkové formě
6. Shrnutí
V dědičnosti je stávající třída, ze které jsou nové třídy odvozeny, známá jako Superclass. Je známá také jako nadřazená třída nebo základní třída.
Existují různé typy dědičnosti. Jsou ilustrovány pomocí následujících příkladů. Uvažujte A B a C jako třídy.
Obrázek 01: Druhy dědičnosti
Obrázek 02: Hybridní dědičnost
Podle výše uvedených schémat se Superclasses liší od každého typu dědičnosti. V jednoúrovňové dědičnosti je A Superclass. Ve víceúrovňovém dědictví A je Superclass pro B a B je Superclass pro C. V hierarchické dědičnosti A je Superclass pro B a C. V násobných dědičnostech jsou A a B Superclass pro C.
Hybridní dědičnost je kombinací víceúrovňových a vícenásobných dědičností. V diagramu na levé straně A je Superclass pro B, C a B, C jsou Superclass pro D. V pravém diagramu A je Superclass pro B a B, D jsou Superclass pro C.
Podívejte se na níže uvedený program napsaný v Javě.
Obrázek 03: Program dědičnosti v Javě
Podle výše uvedeného programu mají třídy A metody sum () a sub (). Třída B má metodu násobení (). Třída B rozšiřuje třídu A. Proto vlastnosti a metody třídy A jsou přístupné třídou B. Proto je třída A Superclass. Referenční typ třídy B se použije k vytvoření objektu. Takže všechny metody, jako jsou sum (), sub () a násobit (), jsou přístupné objektem. Pokud je pro vytvoření objektu použit typ reference Superclass, členové třídy B nemohou být přístupní. např. A obj = new B (); Odkaz Superclass proto nemůže metodu násobit (), protože tato metoda patří do třídy B.
Podle výše uvedených diagramů se podtřídy liší od každého typu dědičnosti. V Single Inheritance je B podtřída. Ve víceúrovňové dědičnosti je B podtřídou A a C je podtřídou B. V hierarchické dědičnosti B a C jsou podtřídami A. V násobných dědičnosti je C podtřídou pro A a B.
V hybridní dědičnosti je diagram vlevo, B a C podtřídami A. D je podtřída B a C. V diagramu vpravo je B podtřída pro A. C je podtřída B a D.
Podle výše uvedeného programu dědičnosti třída B rozšiřuje třídu A. Proto jsou všechny vlastnosti a metody třídy A přístupné třídou B. Třída B je nová třída, která dědí od třídy A. Je známá jako podtřída. Je známá také jako podřízená třída nebo odvozená třída. Třída B má metodu násobení () a může také přistupovat k metodám sum () a sub () třídy A pomocí dědičnosti.
Superclass vs Subclass | |
Při implementaci dědičnosti je existující třída, ze které jsou nové třídy odvozeny, třída Superclass. | Při implementaci dědičnosti je třída, která dědí vlastnosti a metody ze třídy Superclass, podtřídou. |
Synonyma | |
Superclass je znám jako základní třída, rodičovská třída. | Podtřída je známá jako odvozená třída, podřízená třída. |
Funkčnost | |
Nadřazená třída nemůže použít vlastnosti a metody podtřídy. | Podtřída může používat vlastnosti a metody třídy Superclass. |
Jednostupňová dědičnost | |
Existuje jedna Superclass. | Existuje jedna podtřída. |
Hierarchické dědictví | |
Existuje jedna Superclass | Existuje mnoho podtříd. |
Vícenásobné dědictví | |
Existuje mnoho Superclasses. | Existuje jedna podtřída. |
Dědičnost je koncept OOP. Umožňuje přístup k vlastnostem a metodám existující třídy pomocí nové třídy. Zděděná třída je Superclass a odvozená třída je Subclass. Rozdíl mezi Superclass a Subclass je v tom, že Superclass je stávající třída, ze které jsou odvozeny nové třídy, zatímco Subclass je nová třída, která dědí vlastnosti a metody Superclass..
Můžete si stáhnout PDF verzi tohoto článku a použít ji pro účely offline podle citace. Stáhněte si PDF verzi zde Rozdíl mezi Superclass a Subclass
1. „Dědičnost v Javě - Javatpoint.“ The Point, k dispozici zde
2.tutorialspoint.com. "Dědičnost Java." The Point, k dispozici zde