Dalej•LEKCJA 20 / 24

Polimorfizm

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

Zmienna o typie interfejsu może przechowywać obiekty różnych klas implementujących ten interfejs.

Cel lekcji

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

Wyjaśnienie krok po kroku

Dzięki temu kod korzystający z interfejsu nie musi znać konkretnej klasy.

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.

interface Greeter { String say(); }
class Polish implements Greeter { public String say() { return "Cześć"; } }
Greeter g = new Polish();
System.out.println(g.say());

Przeczytaj kod linijka po linijce

  1. interface Greeter { String say(); }Definiujemy nowy typ obiektu lub umowę dotyczącą jego zachowania.
  2. class Polish implements Greeter { public String say() { return "Cześć"; } }Zwracamy wyliczoną wartość do miejsca wywołania funkcji.
  3. Greeter g = new Polish();Tworzymy lub aktualizujemy zmienną, pole albo przypisanie.
Oczekiwany wynik / efektpo uruchomieniu przykładu
Cześć

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

Utwórz implementację English.

To już koniec tej lekcji.

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