【问题标题】:Why Static Fields are not Serialized [duplicate]为什么静态字段不序列化[重复]
【发布时间】:2016-03-19 21:16:56
【问题描述】:

我读到在 Java 中静态字段没有序列化。我知道静态字段是类级别的字段。但是java中静态字段不能序列化的原因是什么?如果我想序列化静态字段,我该如何序列化它? 任何答案

【问题讨论】:

  • 序列化是发生在对象身上的事情。到实例。静态字段不与对象或实例相关联。 (此外,任何需要序列化的静态状态本身就是一种罪过。)
  • 如果我想序列化静态字段,我该如何序列化它?你为什么要这样做?只要您可以访问课程,静态数据就可以随时为您提供。..
  • @Xoce 如果它是静态可变状态,则不是(认为这是一个糟糕的想法,无法忍受)
  • 为什么要序列化类本身?知道这可能会使提供解决方案变得更容易(这通常不是您想要做的事情)

标签: java serialization static field instance


【解决方案1】:

作为类级别的值,它们对于该类的所有实例都是“全局的”。

那么在反序列化此类类的多个实例时,“正确”的值是多少?这种值只能有一个实例。因此静态字段与类相关联,并与类本身而不是不同的实例进行序列化和反序列化。

【讨论】:

  • 是的,我想应该是这样,但是如何序列化类本身?
  • 我只是想知道为什么静态字段不可序列化,我在stackoverflow.com/questions/1008023/… 上找到了一些解释。谢谢大家!
猜你喜欢
  • 1970-01-01
  • 2013-01-16
  • 2014-06-17
  • 1970-01-01
  • 2013-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多