Podczas aktualizacji danych w Javie może istnieć wymóg zastąpienia niektórych konkretnych funkcji, aby kod nie male. Na przykład dołączenie niektórych nowych funkcji w funkcji zastąpionej tak, aby pozostały poprzednie funkcje. W takich sytuacjach „
Metoda zastępująca”W Javie od czasu do czasu aktualizuje zgromadzone funkcje.
Ten artykuł opracuje wykorzystanie i wdrożenie metody zastępowania w Javie.
Czym jest „zastępowanie metody” w Javie?
Jeśli klasa dziecięca zawiera podobną metodę określoną w swojej klasie nadrzędnej, jest ona określana jako „Metoda zastępująca„W Javie. W ten sposób funkcjonalność klasy dzieci, ja.mi., Wchodzi w życie zastąpioną metodę.
Rozważania dotyczące „zastępowania metody” w Javie
- Metoda musi zawierać identyczną nazwę jak w jej klasie nadrzędnej.
- Metoda powinna mieć identyczny parametr jak w klasie nadrzędnej.
- Metoda przydzielona jako „finał„Nie można zastąpić.
Przykład 1: Zastąpienie metody w Javie
W tym przykładzie metodologia zastępowania metody, i.mi., "funkcjonować„Można przeprowadzić za pośrednictwem dziedzictwa:
Klasa rodzic
public void showout ()
System.na zewnątrz.println („To jest Linuxhint!");
Klasa dziecko rozszerza rodzica
public void showout ()
System.na zewnątrz.println („To jest java!");
Przykład klasy publicznej
public static void main (string [] args)
Dziecko obj = nowe dziecko ();
obj.pokazać się();
W powyższej demonstracji zastosuj następujące kroki:
- Po pierwsze, utwórz klasę nadrzędną (super) o nazwie „Rodzic".
- W tej klasie zdefiniuj funkcję o nazwie „pokazać się()”I wyświetl podany komunikat w definicji (funkcji).
- Następnie utwórz klasę dziecka (sub) o nazwie „Dziecko”Dziedziczenie„Rodzic„Klasa za pośrednictwem„rozszerza”Słowo kluczowe.
- W tej klasie zastąp funkcję zdefiniowaną w swojej klasie nadrzędnej, definiując ją identyczną nazwą „pokazać się()”I wyświetl podaną wiadomość.
- W Main, stwórz obiekt klasy dziecięcej za pośrednictwem „nowy”Słowo kluczowe i„Dziecko()”Konstruktor.
- Wreszcie, przywołaj funkcję „pokazać się()”Odwołując się do utworzonego obiektu. To wywoła zastąpioną funkcję zamiast domyślnej w klasie nadrzędnej.
Wyjście
W powyższym wyjściu można przeanalizować, że ta ostatnia funkcja, i.mi., zastąpione wchodzi w życie.
Przykład 2: Wykorzystanie słowa kluczowego „super” w metodzie zastępującej za pomocą Java
W tym konkretnym przykładzie „Super„Słowo kluczowe można powiązać w celu wywołania funkcji zarówno domyślnych, i.mi., Metoda nadrzędna i nadmierna:
Klasa rodzic
public void showout ()
System.na zewnątrz.println („To jest Linuxhint!");
Klasa dziecko rozszerza rodzica
public void showout ()
Super.pokazać się();
System.na zewnątrz.println („To jest java!");
Przykład klasy publicznej
public static void main (string [] args)
Dziecko obj = nowe dziecko ();
obj.pokazać się();
W powyższym bloku kodu:
- Podobnie utwórz klasę nadrzędną o nazwie „Rodzic”I gromadzą funkcję„pokazać się()”W nim wyświetlanie dostarczonej wiadomości.
- W następnym kroku utwórz klasę dziecięcą o nazwie „Dziecko„Dziedziczenie klasy nadrzędnej.
- Podobnie w tej klasie zastępuj identyczną funkcję. Połącz także „Super”Słowo kluczowe z funkcją, aby wywołać domyślne, i.mi., funkcje funkcji klasy nadrzędnej.
- Wreszcie, utwórz obiekt klasy dzieci i powołaj się na zastąpioną funkcję.
- Algorytm: Wykonanie zostanie wykonane w taki sposób, że po wywołaniu funkcji zastąpionej i „„Super„Słowo kluczowe będzie odnotować funkcję klasy nadrzędnej. Spowoduje to zarejestrowanie funkcjonalności zarówno klas rodziców, jak i dzieci jednocześnie na konsoli.
Wyjście
Powyższe dane wyjściowe oznacza, że wpływ funkcji zastąpionej można anulować również za pomocą „Super”Słowo kluczowe.
Przykład 3: Zastąpienie metody „końcowej” w Javie
W tym przykładzie funkcję można przydzielić jako „finał”W klasie nadrzędnej, a później analizowaną poprzez uzyskiwanie do niej w swojej klasie dzieci:
Klasa rodzic
Ostateczny publiczny void showout ()
System.na zewnątrz.println („To jest Linuxhint!");
Klasa dziecko rozszerza rodzica
public void showout ()
System.na zewnątrz.println („To jest java!");
Przykład klasy publicznej
public static void main (string [] args)
Dziecko obj = nowe dziecko ();
obj.pokazać się();
Zgodnie z powyższym kodem zastosuj kroki poniżej:
- Utwórz klasę nadrzędną „Rodzic".
- W ramach tej klasy przyznaje funkcję „pokazać się()" Jak "finał”, Jak wskazuje poprzednie słowo kluczowe.
- Teraz odziedzicz klasę dzieci „Dziecko”Od poprzedniej klasy omówionej. Tutaj zastąp przydzielonych „finał”Funkcja w klasie nadrzędnej.
- W Main, stwórz obiekt „Dziecko”Zajęć i wywołać zastąpioną funkcję.
Wyjście
Wykonanie powyższego kodu zaloguje się wyświetlany błąd, ponieważ „finał„Metodę nie można zastąpić.
Wniosek
Jeśli klasa dziecka zawiera podobną metodę określoną w klasie nadrzędnej, odpowiada zastąpieniu metody w Javie. Takie podejście zastępuje poprzednie metody i implementuje drugie. Nadrzędne można zaspokoić „Super" albo "finał”Słowa kluczowe na różne sposoby. Ten blog omówił koncepcję zastępowania metody w Javie.