Du skal have set offentlige, private og beskyttede søgeord, mens du praktiserer java-programmer, disse kaldes access modifiers. En adgangsmodifikator begrænser adgangen til en klasse, konstruktør, datamedlem og metode i en anden klasse. I java har vi fire adgangsmodifikatorer:
1. standard
2. privat
3. beskyttet
4. public
Standard access modifier
Når vi ikke nævner nogen access modifier, kaldes det standard access modifier., Omfanget af denne modifikator er kun begrænset til pakken. Dette betyder, at hvis vi har en klasse med standardadgangsmodifikatoren i en pakke, er det kun de klasser, der er i denne pakke, der kan få adgang til denne klasse. Ingen anden klasse uden for denne pakke kan få adgang til denne klasse. Tilsvarende, hvis vi har en standardmetode eller et datamedlem i en klasse, ville den ikke være synlig i klassen i en anden pakke. Lad os se på et eksempel for at forstå dette:
Standard Access Modifier Eksempel i Java
for At forstå dette eksempel, skal du have viden om pakker i java.,
I dette eksempel har vi to klasser, Test klasse forsøger at få adgang til den standard metode til Tilføjelse klasse, da klassen Test tilhører en anden pakke, kan dette program ville smide samling fejl, fordi omfanget af standard modifier er begrænset til den samme pakke, hvor det er erklæret.
tilføjelse.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)
privat adgangsmodifikator
omfanget af privat modifikator er kun begrænset til klassen.,
- Private Data og metoder er kun tilgængelige i klassen
- Klasse og Interface kan ikke erklæres som private
- Hvis en klasse har privat konstruktør, så du kan ikke oprette objektet for denne klasse fra uden for klassen.
Lad os se et eksempel for at forstå dette:
Privat adgang modifier eksempel i java
Dette eksempel kaster kompilation fejl, fordi vi forsøger at få adgang til de private data-medlem og metode til klasse ABC i klassen Eksempel. Det private datamedlem og metoden er kun tilgængelige inden for klassen.,
Output:
Compile - time error
beskyttet adgangsmodifikator
beskyttet datamedlem og-metode er kun tilgængelige for klasserne i den samme pakke og underklasser, der findes i en pakke. Du kan også sige, at den beskyttede adgangsmodifikator ligner standardadgangsmodifikator med en undtagelse, at den har synlighed i underklasser.
klasser kan ikke erklæres beskyttet. Denne adgang modifier bruges generelt i en forælder barn forhold.,eksempel på Beskyttet adgangsmodifikator i Java
i dette eksempel kan klassetesten, der findes i en anden pakke, kalde addTwoNumbers()
– metoden, som er erklæret beskyttet. Dette skyldes, at Testklassen udvider klassetilsætningen, og den beskyttede modifikator giver adgang til beskyttede medlemmer i underklasser (i alle pakker).
tilføjelse.java
package abcpackage;public class Addition { protected int addTwoNumbers(int a, int b){return a+b; }}
Test.java
Output:
33
Public access modifier
De medlemmer, metoder og klasser, der er erklæret public kan tilgås fra alle steder., Denne modifikator sætter ingen begrænsning på adgangen.
public access modifier eksempel i java
lad os tage samme eksempel, som vi har set ovenfor, men denne gang er den metode, addTwoNumbers() har forbudt modifier og klasse er i stand til at få adgang til denne metode, uden selv at udvide Tillæg klasse. Dette skyldes, at den offentlige modifikator har synlighed overalt.
tilføjelse.java
package abcpackage;public class Addition { public int addTwoNumbers(int a, int b){return a+b; }}
Test.,Java
Output:
101
lad os se omfanget af disse adgangsmodifikatorer i tabelform:
Skriv et svar