Tento blog bude diskutovat o využití „podtřídy“ a „nadtřídy“ v dědičnosti Java.
Co je podtřída v dědičnosti Java?
A ' podtřída ' tj., ' dítě “ odpovídá třídě dědící „ supertřída ', tj., ' rodič “. Dědí vlastnosti Superclass a má také své vlastní atributy. Pro vytvoření podtřídy nadřazené/nadřazené třídy použijte „ rozšiřuje ” klíčové slovo v deklaraci třídy. Podtřída může dědit proměnné a metody z odpovídající nadtřídy. Tato třída se také může rozhodnout pro skrytí proměnných nebo přepsání metod zděděných z nadtřídy.
Co je supertřída v dědičnosti Java?
' supertřída ” je však třída, ze které lze vytvořit více podtříd. Podtřídy dědí vlastnosti/funkce nadtřídy. Tato třída se také nazývá „ rodič “ nebo „ základna “třída.
Příklad: Vytvoření podtřídy a nadtřídy v Java Inheritance
V tomto příkladu podtřída (dítě) zdědí nadtřídu (rodič) přístupem k členským proměnným a metodám ze své nadtřídy.
Kód supertřídy
Přehled níže uvedených „ supertřída ' kód:
classsuperClass {
Tětiva A = 'David' ;
veřejnost ( int A, int b ) {
vrátit se A + b ;
} }
Ve výše uvedeném kódu:
- Nejprve vytvořte nadtřídu s názvem „ supertřída “.
- V jeho definici inicializujte „ Tětiva “proměnná.
- Definujte také funkci s názvem „ součet() “.
- Parametry funkce ukazují na předané hodnoty, které je třeba vyhodnotit jako součet.
Kód podtřídy
Nyní přejděme k „ podtřída ' kód:
classsubClassextendssuperClass {
veřejnost Tětiva konkat ( ) {
vrátit se A. konkat ( 'ly' ) ;
} }
Ve výše uvedených řádcích kódu:
- Vytvořte podtřídu s názvem „ podtřída 'zdědí nadtřídu' supertřída “ prostřednictvím „ rozšiřuje “.
- V definici třídy deklarujte funkci „ spojit() “.
- V definici (funkce) zřetězte uvedený řetězec s vyvolanou řetězcovou proměnnou z nadtřídy pomocí „ spojit() “ metoda.
Hlavní kód
Nyní si projdeme následující „ hlavní ' kód:
třídapodnadtřída {publicstaticvoidmain ( Tětiva argumenty [ ] ) {
objekt podtřídy = Nový podtřída ( ) ;
Systém . ven . println ( objekt. součet ( 2 , 3 ) ) ;
Systém . ven . println ( objekt. konkat ( ) ) ;
} }
Ve výše uvedeném bloku kódu:
- Vytvořte podřízený objekt třídy pomocí „ Nový klíčové slovo a podtřída() ” konstruktor, resp.
- V dalším kroku vyvolejte funkci nadtřídy s názvem „ součet() ” přes podřízený objekt třídy a předáním uvedených celých čísel vrátíte odpovídající součet.
- Nakonec přistupte k jeho (podtřídě) vlastní funkci “ spojit() “ a připojte řetězec.
Celý kód
classsuperClass {Tětiva A = 'David' ;
veřejnost int součet ( int A, int b ) {
vrátit se A + b ;
} }
classsubClassextendssuperClass {
veřejnost Tětiva konkat ( ) {
vrátit se A. konkat ( 'ly' ) ;
} }
třídapodnadtřída {
veřejnost statický prázdnota hlavní ( Tětiva argumenty [ ] ) {
objekt podtřídy = Nový podtřída ( ) ;
Systém . ven . println ( objekt. součet ( 2 , 3 ) ) ;
Systém . ven . println ( objekt. konkat ( ) ) ;
} }
Výstup
Z vygenerovaného výsledku lze provést následující analýzy:
- Podtřída zdědila členskou proměnnou, tj. A “ ze své supertřídy.
- Podtřída také zdědila metodu, tj. součet() ” ze své nadtřídy přes vytvořený objekt a vrátí součet.
- Tato (podtřída) si zachovala své vlastní atributy a funkce nedotčené.
Závěr
Podtřída, tj. dítě “ odpovídá třídě dědící nadtřídu, tj. rodič “ a nadtřída je však třída, ze které lze zdědit více podtříd. Je taková, že první třída zdědí vlastnosti své odpovídající nadtřídy a má také své vlastní atributy. Tento blog demonstroval využití podtřídy a nadtřídy v dědičnosti Java.