Dalej•LEKCJA 18 / 24

Przesłanianie metod

Kurs Java · Wyjaśnienie, przykłady, oczekiwany wynik i ćwiczenie.

Adnotacja @Override pomaga sprawdzić, czy metoda rzeczywiście nadpisuje metodę rodzica.

Cel lekcji

Poznać zagadnienie „Przesłanianie metod”, zrozumieć przykład i umieć zastosować podobny zapis we własnym programie.

Wyjaśnienie krok po kroku

Pozwala to zmieniać zachowanie bez zmiany kodu, który wywołuje metodę.

Najpierw przeanalizuj kod bez uruchamiania. Zwróć uwagę, jakie dane wykorzystuje program, co z nimi robi i skąd bierze się wynik pokazany pod przykładem.

Praktyczny przykład

Gdzie zobaczysz efekt: Konsola aplikacji Java

Gdzie wkleić kod? To fragment ćwiczeniowy: instrukcje wykonawcze wstaw do main(), a deklaracje klas lub funkcji umieść w odpowiednim miejscu pliku. Uzupełnij wymagane importy i nagłówki.

class Animal { String sound() { return "..."; } }
class Cat extends Animal {
  @Override String sound() { return "miau"; }
}
// main: System.out.println(new Cat().sound());

Przeczytaj kod linijka po linijce

  1. class Animal { String sound() { return "..."; } }Zwracamy wyliczoną wartość do miejsca wywołania funkcji.
  2. class Cat extends Animal {Definiujemy nowy typ obiektu lub umowę dotyczącą jego zachowania.
  3. @Override String sound() { return "miau"; }Zwracamy wyliczoną wartość do miejsca wywołania funkcji.
Oczekiwany wynik / efektpo uruchomieniu przykładu
miau

Jak utrwalić tę umiejętność?

Przepisz kod samodzielnie. Następnie zmień jedną wartość lub jedną instrukcję i spróbuj przewidzieć efekt. Dopiero potem uruchom zmienioną wersję. Jeśli wynik jest inny niż oczekiwany, porównaj kolejne linie.

Spróbuj samodzielnie

Dodaj klasę Dog zwracającą „hau”.

To już koniec tej lekcji.

Jeśli rozumiesz przykład, oznacz lekcję jako ukończoną i przejdź dalej.