Rozdíl mezi vyšší třídou a podtřídou

Key Difference - Superclass vs podtřída
 

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.

OBSAH

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í

Co je Superclass?

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.

Co je podtřída?

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.

Jaká je podobnost mezi vyšší třídou a podtřídou?

  • Oba mají vztah k dědičnosti.

Jaký je rozdíl mezi Superclass a Subclass?

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.

Shrnutí - Superclass vs 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..

Stáhněte si PDF Superclass vs Podtřída

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

Odkaz:

1. „Dědičnost v Javě - Javatpoint.“ The Point, k dispozici zde 
2.tutorialspoint.com. "Dědičnost Java." The Point, k dispozici zde