Modyfikatory dostępu określają widoczność pól (zmiennych składowych) i metod, czyli to, z jakiego miejsca w kodzie można się do nich odwołać. W praktyce jest to podstawowe narzędzie realizacji hermetyzacji (enkapsulacji): wewnętrzne szczegóły implementacji ukrywa się, a na zewnątrz wystawia tylko bezpieczny, kontrolowany interfejs.
Opis: "Metoda oraz zmienna jest dostępna wyłącznie dla innych metod własnej klasy" wskazuje na sytuację, w której dostęp jest dozwolony tylko z wnętrza tej samej klasy. Taki poziom ograniczenia odpowiada modyfikatorowi private, który służy do ukrywania elementów implementacyjnych przed kodem spoza klasy.
Dlaczego pozostałe odpowiedzi nie pasują?
- public oznacza najszerszy dostęp — element ma być dostępny z zewnątrz (np. z innych klas), co stoi w sprzeczności ze słowem "wyłącznie".
- protected zwykle pozwala na dostęp w klasie oraz dodatkowo w klasach dziedziczących (i/lub w obrębie pakietu, zależnie od języka). To nadal jest dostęp szerszy niż "tylko własna klasa".
- static nie jest modyfikatorem dostępu (widoczności), tylko informuje, że pole/metoda należy do klasy, a nie do instancji. Element statyczny może być jednocześnie public/protected/private, więc "static" nie odpowiada opisowi o wyłączności dostępu.
Wskazówka egzaminacyjna: gdy w treści pojawiają się sformułowania typu "tylko w tej klasie", "niedostępne na zewnątrz", najczęściej chodzi o private. Gdy jest mowa o "z każdej klasy" — o public. Gdy o "dla klas pochodnych" — o protected. A gdy o "wspólne dla wszystkich obiektów" — o static.