ich die folgende Fehlermeldung erhalten haben, wenn eine Anwendung in NetBeans zu debuggen versuchen:Wie kann ich eine anonyme innere Klasse in einem NotSerializableException identifizieren
java.io.WriteAbortedException: Schreiben abgebrochen; java.io.NotSerializableException: board.Board 1 $
Im Zuge der Debug-I einfügen mussten ‚Serializable implementiert‘ in einer Reihe von Klassen als die Ausnahme im Verlauf ergab sich aus einer Datei zu lesen, die eine speichert großes Objekt. Dies war nicht schwierig, da die Klasse, die Aufmerksamkeit benötigt, aus der Ausnahmebedingung klar war. Was mich geworfen hat, ist die scheinbar anonyme innere Klasse "Board $ 1". Ich kann nicht für das Leben von mir die Quelle mit "Brett" identifizieren, die das Problem verursacht. Wie kann ich das machen?
Da es eine Frage der Debugging-Praxis ist und nicht die Besonderheiten des Codes (denke ich) habe ich es nicht aufgenommen, aber ich kann das leicht hinzufügen, wenn es hilft.
Ich habe meine Dateien nach Eclipse kopiert und den Package Explorer benutzt, um in das Board zu graben, fand aber nichts. Aber basierend auf der von Ihnen verwendeten Signatur, new Object() {}, habe ich MouseAdapter() {...} gefunden, die nicht in Eclipse oder NetBeans auftauchte. Ich habe Transient eingefügt, um zu verhindern, dass es in die Datei geschrieben wird. Das scheint zu funktionieren, aber jetzt habe ich noch einen anderen, nicht verwandten Bug ... Ich werde jetzt daran arbeiten, vorausgesetzt, ich habe dieses Problem gelöst. – forsate
OK - der andere nicht zusammenhängende Fehler ist behoben, wie es das ursprüngliche Problem ist. Im Nachhinein offensichtlich. Vielen Dank, Lukas. Jetzt frage ich mich, ob ein bisschen verdächtiger Code meinerseits der Grund dafür ist, dass der MouseAdapter nicht auftaucht, aber das ist ein anderes Problem. – forsate