Documente Academic
Documente Profesional
Documente Cultură
}
}}
class Testare {
public static void main(String args[]) {
ClasaDeAcoperire ob = new ClasaDeAcoperire();
ClasaDeAcoperire.ClasaInterna x = ob.new ClasaInterna();
x.print();
}}
Exemplul 2:
class ClasaDeAcoperire{
int num;
ClasaInterna x = new ClasaInterna();
class ClasaInterna {
public void print() {
System.out.println("Aceasta este o clasă internă");
}
}
}
class Testare {
public static void main(String args[]) {
ClasaDeAcoperire ob = new ClasaDeAcoperire();
ob.x.print();
}
}
Exemplul 4:
class DeAcoperire {
public int MembruDeAcoperire = 2;
class ClasaNonStatica {
private int i = 1;
public int valoare() { return i + MembruDeAcoperire; }
}
class Interna {
public int f() {
return x+1;
}
}
public void g(final int j) {
final int k = j;
class LocalaInMetoda{
public int f() { return k + j; }
}
Sintaxa:
A a = new A(){
//descrierea membrilor clasei
};
Exemplul 6:
class Mesaj {
public void afiseaza() {
System.out.println("Mesaj din clasa Mesaj");
}
}
class Test{
public static void main(String[] args) {
Mesaj ob1 = new Mesaj(){
public void afiseaza(){
System.out.println("Mesaj din clasa Test");
}};
ob1.afiseaza();
Surse:
1. http://firozstar.tripod.com/_darksiderg.pdf
2. Cristian Frăsinaru, Curs practic de Java, pag. 65
3. Stefan Tanasa, Cristian Olaru, Stefan Andrei, Java de la 0 la expert, editura Polirom, pag. 167
4. https://www.geeksforgeeks.org/nested-classes-java/