Åtkomstmodifierare är nyckelord som placeras före attribut, metoder eller klasser för att hantera hur de nås. De begränsar vilka metoder, klasser eller paket som kan använda den modifierade informationen.
Åtkomstmodifierare kallas ibland också för synbarhetsmodifierare. Detta är ett intuitivt sätt att säga att de beskriver hur synliga vissa delar av ett program är för andra komponenter som kanske vill komma åt dem.
Synlighetsmodifierare gör att du kan begränsa hur programmerare får åtkomst till givna klasser. Detta uppfyller faktiskt en nyckelprincip för objektorienterad programmering - inkapsling.
Det här är de fyra åtkomstmodifierarna som används i Java:
Standard
När du inte uttryckligen definierar en modifierare kommer Java-kompilatorn att använda standardåtkomst för synlighet. På den här åtkomstnivån kan endast klasser i samma paket som den definierade klassen få åtkomst till dess variabler eller metoder.
Relaterad: Lär dig hur du skapar klasser i Java
Standardmodifieraren gäller också klasser, inte bara dess medlemmar. Det ger samma synbarhetsbegränsningar för klasser som det gör för sina medlemmar.
Standardmodifieraren kallas också paket-privat.
För att använda standardåtkomstmodifieraren, definiera bara dina klassmedlemmar utan någon modifierare:
klassperson {
int ålder;
Strängnamn;
int-hopp () {}
}
Offentlig modifierare
Denna modifierare gör att medlemmar i en klass kan nås i alla paket. Enkelt uttryckt kan du komma åt dem överallt. De offentlig modifierare ger minst åtkomstnivå.
Det är också viktigt att notera att offentlig modifier kan också användas med klasser.
Lägg bara till före klassen eller dess medlem offentlig för att ge den en allmän synlighet. Se exemplet nedan:
offentlig klassperson {
allmänhetens ålder;
offentligt strängnamn;
public int jump () {}
}
Skyddad modifierare
Denna modifierare gör att medlemmar i en klass kan nås inom klassen och dess underklasser. Det kan ge åtkomst utanför ett paket men endast genom arv. Till skillnad från de två tidigare modifierarna, skyddad kan endast användas med medlemmar i en klass, inte själva klassen.
Se koden nedan om hur du kan använda den:
klassperson {
skyddad ålder;
skyddad strängnamn;
skyddad int-hopp () {}
}
Privat modifierare
Denna modifierare gör att medlemmar i en klass endast kan nås inom klassen. Precis som skyddad är privat också endast tillämpligt på medlemmar i en klass.
Privat är den strängaste åtkomstnivån och bör endast användas om du är helt säker på att du inte vill att dina klassmedlemmar ska användas av andra klasser. Till exempel får du ett kompileringsfel om du försöker komma åt en konstruktör med en privat modifierare.
Som med offentlig och privat, lägg bara till nyckelordet privat för att använda denna modifierare.
klassperson {
privat intag;
privat strängnamn;
privat int hopp () {}
}
Fler Java-överväganden
Vid den här tiden är det viktigt att fråga hur du skulle hantera dessa synlighetsmodifierare när det gäller metodöverstyrning. Svaret är att upprätthålla en synlighetsnivå som antingen ligger på samma nivå som den som definieras av superklassen eller högre.
Till exempel om föräldraklassen har skyddad, du kan inte använda standard eller privat modifierare i den övergripande underklassen.
Tabellen nedan sammanfattar åtkomstnivåerna för varje synlighetsmodifierare. Du kan använda den för att grunda din kunskap om åtkomstmodifierare.
Från tabellen är det intressant att notera att medlemmarna i en klass alltid är tillgängliga inom en klass. Resten av kolumnerna visar vad du redan har läst ovan.
Det är viktigt att notera att du kan använda en blandning av dessa åtkomstmodifierare inom en klass. Vad som avgör hur du väljer den som ska användas är hur tillgänglig du vill att en viss del av koden ska vara.
Din valprocess bör vara en gradvis övergång från mest restriktiva till mindre restriktiva.
Java är ganska snyggt ensam, men när det är parat med MySQL? Möjligheterna begränsas endast av din egen kreativitet.
Java tillhandahåller JDBC som en del av Java SDK. I den här artikeln ska vi titta på detaljerna i att ansluta till en MySQL-databas och utföra frågor med den.
Läs Nästa
- Programmering
- Java
- Kodningstips
Jerome är Staff Writer på MakeUseOf. Han täcker artiklar om programmering och Linux. Han är också en kryptoentusiast och håller alltid koll på kryptobranschen.
Prenumerera på vårt nyhetsbrev
Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!
Ett steg till…!
Bekräfta din e-postadress i e-postmeddelandet som vi just skickade till dig.