ID: 3033 OOP - Zaawansowane Średnie

Źródło: Arkusze CKE

Jakie znaczenie ma określenie "klasa zaprzyjaźniona" w kontekście programowania obiektowego?

Warianty odpowiedzi

  1. A

    Klasa, która ma dostęp do prywatnych i chronionych elementów innej klasy

  2. B

    Klasa, w której wszystkie komponenty są publiczne

  3. C

    Klasa, która nie ma możliwości zawierania metod statycznych

  4. D

    Klasa, która może być dziedziczona przez inne klasy

Wyjaśnienie

Klasa zaprzyjaźniona działa na podobnej zasadzie jak funkcja zaprzyjaźniona, ale daje dostęp od razu wszystkim metodom innej klasy.

Jeśli Klasa A ogłosi, że Klasa B jest jej przyjacielem, to Klasa B zyskuje bezpośredni wgląd do prywatnych i chronionych pól oraz metod Klasy A.

Stosuje się to w sytuacjach, gdy dwie klasy są ze sobą niezwykle ściśle powiązane architektonicznie, na przykład we wzorcu Fabryki lub przy zaawansowanej optymalizacji.

Sprawdź się w praktyce

Rozwiąż pełny test próbny INF.04 albo wylosuj pojedyncze pytanie na szybką powtórkę.

Podobne pytania — OOP - Zaawansowane