Ich habe gelesen, dass in statischen Feld Java nicht serialisiert sind. Ich weiß, dass statische Felder Felder auf Klassenebene sind. Aber was ist der Grund in Java, dass statische Felder nicht serialisiert werden können? Wenn ich ein serialisiertes statisches Feld haben möchte, wie kann ich es serialisieren? Beliebige AntwortWarum statische Felder nicht serialisiert sind
Antwort
Als Werte auf Klassenebene sind sie für alle Instanzen dieser Klasse "global".
Also was wäre der "richtige" Wert beim Deserialisieren mehrerer Instanzen einer solchen Klasse? Es kann nur eine Instanz solcher Werte geben. So sind statische Felder mit der Klasse verknüpft und werden serialisiert und deserialisiert mit der Klasse selbst, nicht mit den verschiedenen Instanzen.
Ja, ich denke, es sollte so sein, aber wie können Sie die Klasse selbst serialisieren? –
Ich möchte nur wissen, warum statische Feld ist nicht serialisierbar und ich fand eine Erklärung auf http://stackoverflow.com/questions/1008023/how-to-serialize-static-data-members-of-a-java-Klasse. Danke euch allen! –
- 1. Warum sind statische Felder standardmäßig null?
- 2. Sind statische Felder geerbt?
- 3. Warum wird die statische Variable serialisiert?
- 4. Java: Statische transiente Felder
- 5. Serialisiert die "Standard" -Serialisierung in C# statische Felder?
- 6. Warum statische Dateien nicht sicher sind
- 7. Warum können nicht-statische Felder in Strukturen nicht initialisiert werden?
- 8. Warum sind statische Klassen versiegelt?
- 9. letzte statische vs endgültige nicht statische Felder und JVM-Optimierung
- 10. Wie serialisiert und deserialisiert man statische Member
- 11. Warum serialisiert JSON.string nicht nicht aufzählbare Eigenschaften?
- 12. Benutzerdefinierte Felder auf Java-Enumeration nicht serialisiert bekommen
- 13. Warum sind die Felder dieses Fragments null?
- 14. Sind statische Felder für die Garbage Collection geöffnet?
- 15. Statische Felder in AppDomain
- 16. Statische innere Klasse nicht statische Felder Echtzeit-Dienstprogramm und Codesyntax
- 17. Django statische Dateien sind nicht
- 18. Wie nicht-statische Kind Klasse der statischen Klasse serialisiert
- 19. JQuery sortierbare Liste wird nicht serialisiert, warum?
- 20. Parallelität - warum eine verschachtelte Unterklasse für endgültige statische Felder verwenden?
- 21. Statische Felder in inneren Klassen
- 22. Sind nicht endgültige statische Strings effizienter als statische finale Strings?
- 23. Verschachtelte statische Klasse kann ihre statischen Felder nicht zurückgeben
- 24. Warum statische Eigenschaften nicht mit "->" zugänglich sind, aber mit "::" zugänglich sind?
- 25. Aktualisiere nur Felder, die nicht null sind
- 26. RMI: Sind Felder des Remote-Objekts serialisiert und an den Client gesendet?
- 27. Felder sind leer mysqli
- 28. Was sind statische Variablen?
- 29. Warum kann ich schreibgeschützte Felder nicht mit XmlSerializer serialisieren?
- 30. Warum Felder mit dem Zusatzfeld "Angegeben" immer Null sind?
Serialisierung ist eine Sache, die mit Objekten passiert. Zu Instanzen. Statische Felder sind keinem Objekt oder einer Instanz zugeordnet. (Darüber hinaus ist jeder statische Zustand, der serialisiert werden müsste, selbst eine Sünde.) –
*** Wenn ich ein serialisiertes statisches Feld haben möchte, wie kann ich es serialisieren? *** Warum würden Sie das tun wollen? statische Daten können immer für Sie verfügbar sein, sobald Sie Zugriff auf die Klasse haben. –
@Xoce nicht, wenn es statische veränderbare Zustand ist (Argumente, dass das eine schreckliche Idee nicht ist) –