Co je metoda přepisování v Javě

Co Je Metoda Prepisovani V Jave



Při aktualizaci dat v Javě může existovat požadavek na přepsání některých specifických funkcí, aby byl kód zachován. Například přidání některých nových funkcí v přepsané funkci tak, aby původní funkce zůstaly. V takových situacích „ přeřazení metody “ v Javě dělá zázraky při aktualizaci nashromážděných funkcí čas od času na konci vývojáře.

Tento článek se bude zabývat použitím a implementací přepisování metod v Javě.

Co je „přepisování metody“ v Javě?

Pokud podřízená třída obsahuje podobnou metodu, jaká je uvedena v její nadřazené třídě, označuje se jako „ přeřazení metody “ v Javě. Tím vstoupí v platnost funkcionality podřízené třídy, tj. přepsaná metoda.







Úvahy o „přepisování metody“ v Javě

  • Metoda musí obsahovat stejný název jako v její nadřazené třídě.
  • Metoda by měla mít stejný parametr jako v její nadřazené třídě.
  • Metoda přiřazená jako „ finále “ nelze přepsat.

Příklad 1: Přepsání metody v Javě

V tomto příkladu je metodika přepsání metody, tj. funkce “ lze provést prostřednictvím dědictví:



třída Rodič {

veřejnost prázdnota ukázat se ( ) {

Systém . ven . println ( 'Tohle je Linuxhint!' ) ;

} }

třída Dítě rozšiřuje Rodič {

veřejnost prázdnota ukázat se ( ) {

Systém . ven . println ( 'Tohle je Java!' ) ;

} }

veřejnost třída Příklad {

veřejnost statický prázdnota hlavní ( Tětiva [ ] argumenty ) {

Dítě obj = Nový Dítě ( ) ;

obj. ukázat se ( ) ;

} }

Ve výše uvedené ukázce použijte následující kroky:



  • Nejprve vytvořte nadřazenou (super) třídu s názvem „ Rodič “.
  • V rámci této třídy definujte funkci s názvem „ showOut() ” a zobrazí danou zprávu v její (funkci) definici.
  • Poté vytvořte podřízenou (pod)třídu s názvem „ Dítě 'zdědí' Rodič “třída přes “ rozšiřuje “.
  • V této třídě přepište funkci definovanou v její nadřazené třídě tím, že ji definujete s identickým názvem “ showOut() “ a zobrazí uvedenou zprávu.
  • V main vytvořte objekt podřízené třídy pomocí „ Nový klíčové slovo a Dítě() “konstruktor.
  • Nakonec vyvolejte funkci „ showOut() “ odkazem na vytvořený objekt. Tím se vyvolá přepsaná funkce namísto výchozí funkce v nadřazené třídě.

Výstup





Ve výše uvedeném výstupu lze analyzovat, že funkce přepsání vstoupí v platnost.



Příklad 2: Využití „super“ klíčového slova při přepisování metody pomocí Javy

V tomto konkrétním příkladu „ super Klíčové slovo ” lze přidružit za účelem vyvolání funkcí výchozí, tj. rodičovské i přepsané metody:

třída Rodič {

veřejnost prázdnota ukázat se ( ) {

Systém . ven . println ( 'Tohle je Linuxhint!' ) ;

} }

třída Dítě rozšiřuje Rodič {

veřejnost prázdnota ukázat se ( ) {

super . ukázat se ( ) ;

Systém . ven . println ( 'Tohle je Java!' ) ;

} }

veřejnost třída Příklad {

veřejnost statický prázdnota hlavní ( Tětiva [ ] argumenty ) {

Dítě obj = Nový Dítě ( ) ;

obj. ukázat se ( ) ;

} }

Ve výše uvedeném bloku kódu:

  • Podobně vytvořte nadřazenou třídu s názvem „ Rodič “ a akumulovat funkci “ showOut() ” v něm se zobrazením poskytnuté zprávy.
  • V dalším kroku vytvořte podřízenou třídu s názvem „ Dítě ” zdědí nadřazenou třídu.
  • V rámci této třídy obdobně přepíše identickou funkci. Spojte také „ super ” klíčové slovo s funkcí pro vyvolání výchozích, tj. funkcí nadřazené třídy.
  • Nakonec vytvořte objekt podřízené třídy a vyvolejte přepsanou funkci.
  • Algoritmus: Provedení bude provedeno takovým způsobem, že při vyvolání přepsané funkce a „ super Klíčové slovo ” bude odkazovat na funkci rodičovské třídy. Výsledkem bude protokolování funkcí nadřazené i podřízené třídy současně na konzole.

Výstup

Výše uvedený výstup znamená, že účinek přepsané funkce lze zrušit také pomocí „ super “.

Příklad 3: Přepsání „konečné“ metody v Javě

V tomto příkladu lze funkci alokovat jako „ finále ” v nadřazené třídě a později analyzován přístupem v její podřízené třídě:

třída Rodič {

finále veřejnost prázdnota ukázat se ( ) {

Systém . ven . println ( 'Tohle je Linuxhint!' ) ;

} }

třída Dítě rozšiřuje Rodič {

veřejnost prázdnota ukázat se ( ) {

Systém . ven . println ( 'Tohle je Java!' ) ;

} }

veřejnost třída Příklad {

veřejnost statický prázdnota hlavní ( Tětiva [ ] argumenty ) {

Dítě obj = Nový Dítě ( ) ;

obj. ukázat se ( ) ;

} }

Podle výše uvedeného kódu použijte níže uvedené kroky:

  • Vytvořte nadřazenou třídu ' Rodič “.
  • V rámci této třídy přidělte funkci „ showOut() ' tak jako ' finále “, jak naznačuje předchozí klíčové slovo.
  • Nyní zděďte třídu dítěte ' Dítě “ z bývalé diskutované třídy. Zde přepište přidělené „ finále ” funkce v nadřazené třídě.
  • Především vytvořte objekt „ Dítě ” a vyvolejte přepsanou funkci.

Výstup

Spuštění výše uvedeného kódu zaznamená zobrazenou chybu, protože „ finále ” metodu nelze přepsat.

Závěr

Pokud podřízená třída obsahuje podobnou metodu, jaká je určena v její nadřazené třídě, odpovídá to přepsání metody v Javě. Tento přístup potlačuje předchozí metody a implementuje druhé. Nadřazené lze zajistit prostřednictvím „ super ' nebo ' finále “ klíčová slova různými způsoby. Tento blog pojednával o konceptu přepisování metod v Javě.