hallo,
is wahrscheinlich eine blöde anfängerfrage, aber wieso erstellt mir java neben den normalen xxx.class dateien auch dateien mit der endung xxx$1.class?
wofür werden die benötigt?
danke,
andi
hallo,
is wahrscheinlich eine blöde anfängerfrage, aber wieso erstellt mir java neben den normalen xxx.class dateien auch dateien mit der endung xxx$1.class?
wofür werden die benötigt?
danke,
andi
ein grund worum solche class files erzeugt werden sind nested / inner classes ...
ja das dachte ich mir schon. von einer datei die eine inner-class enthält wurde die normale xx.class erzeugt sowie xx$1.class und namederOuterClass$namederInnerClass.class. aber von einer anderen klasse ohne inner class wurde auch eine xx$1.class erstellt. komisch
lg,
andi
Das ist dann eine anonyme innere Klasse, die wird z.B. so erzeugt:
IPropertyChangeListener listener = new IPropertyChangeListener() {
public void propertyChange(PropertyChangeEvent event) {
//do something...
}
}
Vor allem bei solchen Listener-Geschichten sind die denk ich oft anzutreffen.
Da wird eine Instanz einer namenlosen (anonymen) Klasse erzeugt, die die Implementierung des angegebenen Interface darstellt.
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!