Opis w pytaniu dotyczy sytuacji, gdy klasa pochodna "zawiera" (przejmuje) metody i pola zdefiniowane w klasie bazowej. Taki mechanizm w programowaniu obiektowym nazywa się dziedziczeniem. Dzięki dziedziczeniu można:
- ponownie wykorzystać wspólny kod bez kopiowania go do wielu klas,
- budować hierarchie typów (ogólniejsze klasy bazowe i bardziej szczegółowe klasy pochodne),
- rozszerzać zachowanie przez dodawanie nowych metod lub nadpisywanie istniejących.
Odpowiedź "wirtualizacją" nie pasuje do definicji: wirtualizacja jest pojęciem z obszaru uruchamiania systemów/środowisk (np. maszyny wirtualne) albo z technik językowych (np. metody wirtualne), ale nie oznacza samego przejmowania pól i metod przez klasę pochodną.
Odpowiedź "polimorfizmem" także jest nieadekwatna. Polimorfizm opisuje możliwość traktowania obiektów różnych klas w jednolity sposób (np. przez typ bazowy lub interfejs) oraz wywoływania metod, które w zależności od rzeczywistego typu obiektu wykonują różne implementacje. Polimorfizm często współwystępuje z dziedziczeniem, ale nie jest tym samym mechanizmem.
Odpowiedź "hermetyzacją" odnosi się do idei ukrywania stanu i ograniczania dostępu do danych obiektu, zwykle omawianej jako enkapsulacja. Enkapsulacja dotyczy m.in. modyfikatorów dostępu i udostępniania API klasy, a nie przejmowania metod z klasy bazowej.
Wskazówka egzaminacyjna: gdy w treści pojawiają się sformułowania typu "klasa pochodna przejmuje/ma metody klasy bazowej", niemal zawsze chodzi o dziedziczenie.