Junior
Vertel over de toegangsmodifiers in Java.
sobes.tech AI
Antwoord van AI
Toegangsmodifiers regelen de zichtbaarheid van klassen, klasseleden (velden, methoden, constructors) in Java.
Er zijn vier toegangsmodifiers:
publicprotecteddefault(zonder modifier)private
Hun zichtbaarheid in verschillende contexten:
| Modifier | Binnen de klasse | Binnen het pakket | In een subclass (in elk pakket) | Overal |
|---|---|---|---|---|
private |
Ja | Nee | Nee | Nee |
default |
Ja | Ja | Nee | Nee |
protected |
Ja | Ja | Ja | Nee |
public |
Ja | Ja | Ja | Ja |
Voorbeelden van gebruik:
public class Parent {
private int privateField; // Alleen toegankelijk binnen de Parent-klasse
int defaultField; // Toegankelijk binnen het pakket
protected int protectedField; // Toegankelijk binnen het pakket en in subclasses
public int publicField; // Toegankelijk overal
private void privateMethod() {} // Alleen toegankelijk binnen de Parent-klasse
void defaultMethod() {} // Toegankelijk binnen het pakket
protected void protectedMethod() {} // Toegankelijk binnen het pakket en in subclasses
public void publicMethod() {} // Toegankelijk overal
}
package another_package;
import some_package.Parent;
public class Child extends Parent {
void accessFields() {
// privateField = 10; // Fout: privé
defaultField = 20; // Fout: default (in ander pakket)
protectedField = 30; // Toegankelijk: protected (in subclass)
publicField = 40; // Toegankelijk: public
}
void accessMethods() {
// privateMethod(); // Fout: privé
// defaultMethod(); // Fout: default (in ander pakket)
protectedMethod(); // Toegankelijk: protected (in subclass)
publicMethod(); // Toegankelijk: public
}
}
Modificators worden gebruikt voor encapsulatie en beheer van de API van klassen.