Adgangsmodifikatorer er nøgleord placeret foran attributter, metoder eller klasser for at styre, hvordan de åbnes. De begrænser, hvilke metoder, klasser eller pakker der kan bruge de modificerede data.
Adgangsmodifikatorer kaldes undertiden også synlighedsmodifikatorer. Dette er en intuitiv måde at sige, at de beskriver, hvor synlige bestemte dele af et program er for andre komponenter, der måske ønsker at få adgang til dem.
Synlighedsmodifikatorer giver dig mulighed for at begrænse, hvordan programmører får adgang til givne klasser. Dette opfylder faktisk et nøgleprincip for objektorienteret programmering - indkapsling.
Dette er de fire adgangsmodifikatorer, der bruges i Java:
Standard
Når du ikke udtrykkeligt definerer en modifikator, bruger Java-compileren standardadgang til synlighed. På dette adgangsniveau er det kun klasser i samme pakke som den definerede klasse, der har adgang til dens variabler eller metoder.
Relaterede: Lær hvordan du opretter klasser i Java
Standardmodifikatoren gælder også for klasser, ikke kun dens medlemmer. Det giver de samme synlighedsbegrænsninger for klasser som det gør for dets medlemmer.
Standardmodifikatoren kaldes også pakke-privat.
For at bruge standardadgangsmodifikatoren skal du bare definere dine klassemedlemmer uden nogen modifikator:
klasse Person {
int alder
Strengnavn
int spring () {}
}
Offentlig modifikator
Denne modifikator giver adgang til medlemmer af en klasse i alle pakker. Kort sagt, du kan få adgang til dem overalt. Det offentlig modifikator giver det mindst begrænsende adgangsniveau.
Det er også vigtigt at bemærke, at offentlig modifikator kan også bruges med klasser.
Forkort klassen eller dens medlem med offentlig for at give det en offentlig synlighed. Se eksemplet nedenfor:
offentlig klasse person {
offentlig int alder
offentligt strengnavn;
public int jump () {}
}
Beskyttet modifikator
Denne modifikator giver adgang til medlemmer af en klasse inden for klassen og dens underklasser. Det kan give adgang uden for en pakke, men kun gennem arv. I modsætning til de to tidligere modifikatorer, beskyttet kan kun bruges med medlemmer af en klasse, ikke selve klassen.
Se koden nedenfor for, hvordan du kan bruge den:
klasse Person {
beskyttet int alder
beskyttet strengnavn;
beskyttet int spring () {}
}
Privat modifikator
Denne ændring giver kun adgang til medlemmer af en klasse inden for klassen. Ligesom beskyttet er privat også kun gældende for medlemmer af en klasse.
Privat er det strengeste adgangsniveau og bør kun bruges, hvis du er helt sikker på, at du ikke vil have dine klassemedlemmer brugt af andre klasser. For eksempel får du en kompileringsfejl, hvis du forsøger at få adgang til en konstruktør med en privat modifikator.
Som med offentlig og privatskal du blot tilføje nøgleordet privat for at bruge denne modifikator.
klasse Person {
privat int alder
privat strengnavn;
privat int spring () {}
}
Flere Java-overvejelser
På dette tidspunkt er det vigtigt at stille spørgsmålstegn ved, hvordan du vil styre disse synlighedsmodifikatorer, når det kommer til metodeoverstyring. Svaret er at opretholde et synlighedsniveau, der enten er på samme niveau som det, der er defineret af superklassen eller højere.
For eksempel hvis forældreklassen har beskyttet, kan du ikke bruge standard eller privat modifikatorer i den overordnede underklasse.
Tabellen nedenfor opsummerer adgangsniveauerne for hver synlighedsmodifikator. Du kan bruge den til at grundlægge din viden om adgangsmodifikatorer.
Fra bordet er det interessant at bemærke, at medlemmerne af en klasse altid er tilgængelige inden for en klasse. Resten af kolonnerne viser, hvad du allerede har læst ovenfor.
Det er vigtigt at bemærke, at du kan bruge en blanding af disse adgangsmodifikatorer inden for en klasse. Hvad der bestemmer, hvordan du vælger den, der skal bruges, er, hvor tilgængelig du vil have, at en bestemt del af koden skal være.
Din valgproces skal være et gradvist skift fra mest restriktive til mindre restriktive.
Java er ret pænt alene, men når det er parret med MySQL? Mulighederne er kun begrænset af din egen kreativitet.
Java leverer JDBC som en del af Java SDK. I denne artikel skal vi se på detaljerne i at oprette forbindelse til en MySQL-database og udføre forespørgsler med den.
Læs Næste
- Programmering
- Java
- Kodningstip
Jerome er Staff Writer hos MakeUseOf. Han dækker artikler om programmering og Linux. Han er også en kryptoentusiast og holder altid styr på kryptoindustrien.
Abonner på vores nyhedsbrev
Deltag i vores nyhedsbrev for tekniske tip, anmeldelser, gratis e-bøger og eksklusive tilbud!
Et trin mere !!!
Bekræft din e-mail-adresse i den e-mail, vi lige har sendt dig.