Ist es in Java möglich, die Serializable-Schnittstelle einer Klasse hinzuzufügen, die sie zur Laufzeit nicht hat?

Es gibt eine Klasse, die ich serialisieren möchte, und sie implementiert Serializable, aber eines der enthaltenen Objekte implementiert Serializable nicht.

Gibt es eine Möglichkeit, die Klasse zur Laufzeit so zu ändern, dass sie die serialisierbare Schnittstelle implementiert, damit ich sie serialisieren kann? Ich kann es zur Kompilierungszeit nicht ändern, da es sich um eine Bibliothek eines Drittanbieters handelt.

Vielleicht müsste ich eine Art Bytecode-Schreiber verwenden oder so?

BEARBEITEN: Sowohl die enthaltende Klasse als auch die enthaltene Klasse befinden sich in der Bibliothek eines Drittanbieters, sodass ich glaube, dass ich etwas nicht als vorübergehend markieren kann. Die enthaltende Klasseist Als serialisierbar markiert, enthält es jedoch ein Objekt, das nicht serialisierbar ist.

Ich bin in Ordnung mit dem Schreiben einer benutzerdefinierten Serialisierungsmethode für die Klasse, nicht sicher, wie ich dies tun würde, müsste ich Reflexion verwenden, um die Werte der privaten Variablen zu erhalten?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage