簡體   English   中英

為什么google-collection AbstractMultimap類對成員變量使用瞬態關鍵字?

[英]Why google-collections AbstractMultimap class use transient keyword for member variable?

https://code.google.com/p/google-collections/source/browse/trunk/src/com/google/common/collect/AbstractMultimap.java?r=117

AbstractMultimap實現了Serializable。

在我看來,實際數據保存在map和totalSize變量中。

但是這兩個變量都用transient關鍵字聲明。

這個事實意味着沒有序列化嗎?

private transient Map<K, Collection<V>> map;
private transient int totalSize; 

這是因為AbstractMultimap類實際上並不包含支持Map實現。 由具體的子類提供,它負責管理序列化:

For serialization to work, the subclass must specify explicit
readObject and writeObject methods.

這個事實意味着沒有序列化嗎?

沒有。

這意味着這些字段不會通過默認的序列化機制進行序列化。 狀態實際上是在子類的writeObject()方法中序列化的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM