Ich habe die folgende KlassenhierarchieSerialisierung, Zusammenstellung und Byte-Code-Generierung
ParentInterface
|
v
ParentClass
/ \
v v
SubClass1 SubClass2
Die Schnittstelle erstreckt sich nicht Serializable
Schnittstelle und keine der Serializable
Schnittstelle als auch Klassen implementieren. Alle Klassen wurden kompiliert und in eine JAR-Datei gepackt.
Jetzt ändere ich die , so dass es Serializable
Schnittstelle erweitert. Danach ersetze ich nur die ParentInterface.class
Datei im Glas.
Ich habe einen Code, wo ich versuche, eine Instanz von SubClass1
und SubClass2
zu serialisieren. Wenn ich versuche zu serialisieren, bekomme ich NotSerializableException
.
Ich nehme an, wenn ich alle Klassen wieder kompiliert und sie in meinem Glas ersetzt hätte, hätte es funktioniert. Was ist falsch, wenn ich nur die ersetzen?
Gehen Sie nicht davon aus, dass es bei einer Neukompilierung funktionieren würde - versuchen Sie es und finden Sie es heraus. – skaffman