Java Access Modifiers – Public, Private, Protected & Default (Svenska)

posted in: Articles | 0

Du måste ha sett offentliga, privata och skyddade sökord medan du övar java-program, dessa kallas access modifiers. En åtkomstmodifierare begränsar åtkomsten för en klass, konstruktör, datamedlem och metod i en annan klass. I java har vi fyra åtkomstmodifierare:
1. standard
2. privat
3. skyddad
4. public

standardåtkomstmodifierare

När vi inte nämner någon åtkomstmodifierare kallas den standardåtkomstmodifierare., Omfattningen av denna modifierare är begränsad till paketet endast. Det betyder att om vi har en klass med standardåtkomstmodifieraren i ett paket kan endast de klasser som finns i det här paketet komma åt den här klassen. Ingen annan klass utanför detta paket kan komma åt den här klassen. På samma sätt, om vi har en standardmetod eller datamedlem i en klass, skulle det inte vara synligt i klassen i ett annat paket. Låt oss se ett exempel för att förstå detta:

Standardåtkomstmodifieringsexempel i Java

för att förstå detta exempel måste du ha kunskap om paket i java.,

i det här exemplet har vi två klasser, Testklass försöker komma åt standardmetoden för Tilläggsklass, eftersom klasstest tillhör ett annat paket, skulle detta program kasta kompileringsfel, eftersom omfattningen av standardmodifieraren är begränsad till samma paket där den deklareras.
tillägg.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)

private access modifier

omfattningen av privata modifierare är begränsad till klassen endast.,

  1. privata datamedlemmar och metoder är endast tillgängliga inom klassen
  2. klass och gränssnitt kan inte deklareras som privata
  3. om en klass har privat konstruktör kan du inte skapa objektet för den klassen utanför klassen.

låt oss se ett exempel för att förstå detta:

private access modifier example in java

det här exemplet kastar kompileringsfel eftersom vi försöker komma åt den privata datamedlemmen och metoden för klass ABC i klassexemplet. Den privata datamedlemmen och metoden är endast tillgängliga inom klassen.,

utgång:

Compile - time error

skyddad åtkomstmodifierare

skyddad datamedlem och metod är endast tillgängliga av klasserna i samma paket och de underklasser som finns i ett paket. Du kan också säga att den skyddade åtkomstmodifieraren liknar standardåtkomstmodifieraren med ett undantag att den har synlighet i underklasser.
klasser kan inte deklareras skyddade. Denna åtkomstmodifierare används i allmänhet i en överordnad underordnad relation.,

exempel på skyddad åtkomstmodifierare i Java

i det här exemplet kan klasstestet som finns i ett annat paket anropa metodenaddTwoNumbers(), som deklareras skyddad. Detta beror på att Testklassen utökar klasstillägg och den skyddade modifieraren tillåter åtkomst av skyddade medlemmar i underklasser (i alla paket).
tillägg.java

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

– Test.java

Output:

33

public access modifier

medlemmar, metoder och klasser som förklaras offentliga kan nås från var som helst., Denna modifierare inte sätta någon begränsning på åtkomst.

public access modifier exempel i java

kan ta samma exempel som vi har sett ovan men den här gången metoden addTwoNumbers () har Offentlig modifierare och klass Test kan komma åt denna metod utan att ens utvidga Tilläggsklassen. Detta beror på att Offentlig modifierare har synlighet överallt.
tillägg.java

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

Testa.,java

utgång:

101

Låt oss se omfattningen av dessa accessmodifierare i tabellform:

omfattningen av accessmodifierare i tabellform

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *