【问题标题】:As all the member variables of java LinkedList is transient, what will be the use of implementing Serializable?由于 java LinkedList 的所有成员变量都是瞬态的,那么实现 Serializable 有什么用?
【发布时间】:2014-11-13 13:57:49
【问题描述】:

1) 在 LinkedList 实现中,所有 3 个成员变量的大小,首先,最后都是瞬态的,那么实现可序列化有什么用?

2) 当我们尝试序列化 LinkedList 时会保留什么?

【问题讨论】:

    标签: java


    【解决方案1】:

    您会注意到 LinkedList 具有 writeObjectreadObject 方法。这些写入/读取列表的大小并写入/读取列表中的每个对象。

    请注意,这些方法(还有字段)是私有的,因此实现可能会发生变化。不要依赖它。取决于接口。

    【讨论】:

    • 否则默认情况下会进行序列化,这将是递归的,对于一个大列表很容易爆栈。
    【解决方案2】:

    看看 readObject()writeObject()。它将序列化列表的条目而不是列表本身,并从条目中重构它。

    【讨论】:

      猜你喜欢
      • 2011-08-23
      • 1970-01-01
      • 2011-11-16
      • 1970-01-01
      • 2011-02-05
      • 2011-06-18
      • 2016-02-12
      • 2010-10-28
      相关资源
      最近更新 更多