Junior
Vorbește despre modificatorii de acces în Java.
sobes.tech AI
Răspuns de la AI
Modificatorii de acces controlează vizibilitatea claselor, membrilor clasei (câmpuri, metode, constructori) în Java.
Există patru modificatori de acces:
publicprotecteddefault(fără modificator)private
Vizibilitatea lor în diferite contexte:
| Modificator | În interiorul clasei | În interiorul pachetului | Într-o subclasă (în orice pachet) | Oriunde |
|---|---|---|---|---|
private |
Da | Nu | Nu | Nu |
default |
Da | Da | Nu | Nu |
protected |
Da | Da | Da | Nu |
public |
Da | Da | Da | Da |
Exemple de utilizare:
public class Parent {
private int privateField; // Accesibil doar în clasa Parent
int defaultField; // Accesibil în pachet
protected int protectedField; // Accesibil în pachet și în subclase
public int publicField; // Accesibil peste tot
private void privateMethod() {} // Accesibil doar în clasa Parent
void defaultMethod() {} // Accesibil în pachet
protected void protectedMethod() {} // Accesibil în pachet și în subclase
public void publicMethod() {} // Accesibil peste tot
}
package another_package;
import some_package.Parent;
public class Child extends Parent {
void accessFields() {
// privateField = 10; // Eroare: privat
defaultField = 20; // Eroare: default (în alt pachet)
protectedField = 30; // Accesibil: protected (în subclasă)
publicField = 40; // Accesibil: public
}
void accessMethods() {
// privateMethod(); // Eroare: privat
// defaultMethod(); // Eroare: default (în alt pachet)
protectedMethod(); // Accesibil: protected (în subclasă)
publicMethod(); // Accesibil: public
}
}
Modificatorii sunt folosiți pentru încapsulare și gestionarea API-ului claselor.