modyfikatory dostępu Java-Public, Private, Protected & Default

wpis w: Articles | 0

podczas wykonywania programów java konieczne jest wyświetlanie słów kluczowych publicznych, prywatnych i chronionych. Modyfikator dostępu ogranicza dostęp klasy, konstruktora, elementu danych i metody w innej klasie. W Javie mamy cztery modyfikatory dostępu:
1. default
2. prywatna
3. protected
4. public

Default access modifier

gdy nie wymieniamy żadnego modyfikatora dostępu, nazywa się on default access modifier., Zakres tego modyfikatora jest ograniczony tylko do pakietu. Oznacza to, że jeśli mamy klasę z domyślnym modyfikatorem dostępu w pakiecie, tylko te klasy, które są w tym pakiecie, mogą uzyskać dostęp do tej klasy. Żadna inna klasa poza tym pakietem nie może uzyskać dostępu do tej klasy. Podobnie, jeśli mamy domyślną metodę lub element danych w klasie, nie będzie on widoczny w klasie innego pakietu. Zobacz przykład, aby to zrozumieć:

domyślny przykład modyfikatora dostępu w języku Java

aby zrozumieć ten przykład, musisz znać pakiety w języku java.,

w tym przykładzie mamy dwie klasy, Klasa Test próbuje uzyskać dostęp do domyślnej metody dodawania klasy, ponieważ class Test należy do innego pakietu, program ten wyrzuci błąd kompilacji, ponieważ zakres domyślnego modyfikatora jest ograniczony do tego samego pakietu, w którym jest zadeklarowany.
dodanie.java

Test.java

Output:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: The method addTwoNumbers(int, int) from the type Addition is not visibleat xyzpackage.Test.main(Test.java:12)

modyfikator dostępu prywatnego

zakres modyfikatora dostępu prywatnego jest ograniczony tylko do klasy.,

  1. prywatne elementy danych i metody są dostępne tylko w obrębie klasy
  2. Klasa I interfejs nie może być zadeklarowany jako prywatny
  3. jeśli klasa ma prywatny konstruktor, to nie można utworzyć obiektu tej klasy spoza klasy.

zobaczmy przykład, aby to zrozumieć:

prywatny przykład modyfikatora dostępu w Javie

Ten przykład powoduje błąd kompilacji, ponieważ próbujemy uzyskać dostęp do prywatnego elementu danych i metody klasy ABC w przykładzie klasy. Prywatny element danych i Metoda są dostępne tylko w ramach klasy.,

Output:

Compile - time error

modyfikator Protected Access

Protected data member I Metoda są dostępne tylko dla klas tego samego pakietu i podklas obecnych w dowolnym pakiecie. Można również powiedzieć, że modyfikator dostępu chronionego jest podobny do domyślnego modyfikatora dostępu, z jednym wyjątkiem, że ma widoczność w podklasach.
klasy nie mogą być deklarowane jako chronione. Ten modyfikator dostępu jest zwykle używany w relacji rodzic-dziecko.,

przykład modyfikatora dostępu chronionego w Javie

w tym przykładzie Klasa Test, która jest obecna w innym pakiecie, może wywołać metodęaddTwoNumbers(), która jest zadeklarowana jako chroniona. Dzieje się tak dlatego, że Klasa testowa rozszerza dodawanie klasy, A modyfikator protected pozwala na dostęp chronionych członków w podklasach (w dowolnych pakietach).
dodanie.java

package abcpackage;public class Addition { protected int addTwoNumbers(int a, int b){return a+b; }}

Test.java

Output:

33

modyfikator publicznego dostępu

członkowie, metody i klasy, które są zadeklarowane jako publiczne, mogą być dostępne z dowolnego miejsca., Ten modyfikator nie ogranicza dostępu.

publiczny przykład modyfikatora dostępu w Javie

weźmy ten sam przykład, który widzieliśmy powyżej, ale tym razem metoda addTwoNumbers() ma publiczny modyfikator i class Test jest w stanie uzyskać dostęp do tej metody bez rozszerzania klasy dodawania. Dzieje się tak, ponieważ public modifier ma widoczność wszędzie.
dodanie.java

package abcpackage;public class Addition { public int addTwoNumbers(int a, int b){return a+b; }}

Test.,java

Output:

101

pozwala zobaczyć zakres tych modyfikatorów dostępu w formie tabelarycznej:

zakres modyfikatorów dostępu w formie tabelarycznej

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *