Przejdź do treści głównej
INF.04Pytanie #605 z 856dziedziczenie-i-polimorfizm

Na przedstawionym schemacie znajdują się klasy i związki dziedziczenia, gdzie poziom I to klasa bazowa, a pozostałe klasy są jej potomkami. Aby każda z klas poziomu III mogła wywołać tą samą metodę, która jest niezmienna dla nich wszystkich, to zgodnie z zasadami programowania obiektowego należy zdefiniować ją:

Opcje odpowiedzi:
A
we wszystkich klasach poziomu I oraz poziomu II.
B
jedynie we wszystkich klasach poziomu III.
C
jedynie w klasie poziomu I.
Prawidłowa
D
we wszystkich klasach.
Reklama

Wyjaśnienie i uzasadnienie dydaktyczne

Poprawna odpowiedź to C. Dzięki mechanizmowi dziedziczenia, metody zdefiniowane w klasie bazowej (Poziom I - Samochód) są automatycznie dostępne dla wszystkich klas pochodnych (Poziom II i III), o ile ich modyfikator dostępu na to pozwala (np. public lub protected). Definiowanie jej tylko raz w klasie bazowej jest zgodne z zasadą DRY (Don't Repeat Yourself).

Wyjaśnienie pozostałych opcji:

  • A, B, D – Wymagają wielokrotnego powielania tego samego kodu, co jest błędem w sztuce programowania i utrudnia późniejsze utrzymanie aplikacji.

Chcesz poćwiczyć całą kwalifikację INF.04?

Egzamin próbny na czas, nauka działami, losowe pytanie albo przegląd całej bazy — wszystko w przeglądarce i bez zakładania konta.

Rozwiąż w Quizie

Pojęcia z tego pytania

Cały słownik INF04
Reklama

Podobne pytania z działu „Dziedziczenie i polimorfizm”

Ten sam obszar materiału z kwalifikacji INF.04. W całej bazie znajdziesz 20 pytań z tego działu.