[英]Why do we serialize java class and declaring a variable static won't serialize it?
像 Logger 這樣的靜態類不會被序列化。 為什么 ?
當您將一個類標記為Serializable
,您是在請求 Java 運行時序列化您的類的對象或實例。 這有助於將對象中的數據轉換為可持久化的格式以存儲或通過數據流發送。
另一方面, static
成員不屬於任何類,不屬於序列化的范圍。 因此,將類標記為Serializable
不會影響類的任何static
成員。
當您反序列化一個對象時,它的所有類的static
成員都將在加載類時在另一個 JVM 中初始化。 因此將靜態字段數據作為序列化對象的一部分發送是沒有意義的。
有關更多詳細信息,請參閱此文章。
希望這可以幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.