Junior — Middle
O clasă internă în Java este privată pentru accesul din alte clase?
sobes.tech AI
Răspuns de la AI
O clasa internă în Java nu trebuie neapărat să fie privată pentru a fi accesibilă din alte clase. Accesul la clasa internă depinde de modificatorul de acces atribuit (private, protected, public sau package-private). De exemplu, dacă clasa internă este declarată ca private, ea este accesibilă doar în interiorul clasei externe. Dacă este declarată ca public sau fără modificator (package-private), atunci poate fi accesată și din alte clase din același pachet sau prin import.
Exemplu:
public class Outer {
private class InnerPrivate {}
public class InnerPublic {}
}
// Dintr-o altă clasă din același pachet:
Outer.InnerPublic obj = new Outer().new InnerPublic(); // acces permis
// Outer.InnerPrivate obj2 = new Outer().new InnerPrivate(); // eroare de compilare