| Java™ und Objektorientierung | |
| Java/OO | Druckversion |
Hier werde ich beispielhaft die Inneren Klassen in Java auflisten.
import java.awt.event.*;
public class ClassWithInnerClasses {
int x;
static int s; | |
static class StaticMemberClass {
void method() {
s = 4;
// x = 5;
}
} | Statische innere Klassen haben keinen Zugriff auf (Objekt-)Attribute. Die Variabel x ist hier also nicht sichtbar. |
class MemberClass {
void method() {
s = 4;
x = 5;
}
} | Nicht statische innere Klassen haben Zugriff auf statische Variablen und auf (Objekt-)Attribute. |
void method(int i, final int f) {
int m;
final int fin = 4; | |
class LocalClass {
void method() {
x = 4;
s = 5;
// System.out.println(i + " " + m);
System.out.println(f + " " + fin);
}
} | Lokale Klassen haben Zugriff wie innere Klassen mit dem Zusatz, dass sie
finale Variablen der umliegenden Methode verwenden dürfen. Die lokalen Variablen i und m sind hier also nicht verwendbar! |
Object refAufAnonymeKlasse = new WindowAdapter() {
public void WindowClosing(WindowEvent we) {
System.exit(0);
}
}; | Lokale anonyme Klassen haben Zugriff wie andere lokale Klassen. |
} // end method() } // end class |