W programowaniu obiektowym (OOP) kluczową rolę odgrywa enkapsulacja, czyli ukrywanie szczegółów implementacji obiektu i kontrolowanie dostępu do jego stanu. Jeśli pole lub metoda ma być dostępna wyłącznie z poziomu klasy, w której jest zdefiniowana, mówimy o dostępie typu private.
W JavaScript prywatność jest realizowana wprost przez język za pomocą prywatnych pól i metod klas oznaczanych prefiksem #, np. this.#pole. Taki element jest "hard private" – nie da się go odczytać ani wywołać z kodu znajdującego się poza ciałem klasy; próba użycia go spoza klasy skutkuje błędem składniowym.
Dlaczego pozostałe odpowiedzi są niepoprawne?
Wskazówka egzaminacyjna: nie myl prywatności (kto może uzyskać dostęp) z niemodyfikowalnością (czy wartość można zmienić) oraz ze statycznością (czy składowa należy do klasy czy do instancji).
Około 47% zdających odpowiada poprawnie na to pytanie. trudne
Według specjalistów z branży: "Prywatność w OOP oznacza, że pole lub metoda są dostępne tylko wewnątrz klasy, w której je zdefiniowano."
Źródła:
Materiały:
Sprawdź odpowiedź