java - java中的serialVersionUID是什么,通常在异常类中?

标签 java serialization serialversionuid

Possible Duplicate:
Why should I bother about serialVersionUID?

我正在查看一些异常处理代码,我看到了一些名为 serialVersionUID 的东西。这个uid是干什么用的??是只限异常(exception)还是全类都可以用???这个id有什么好处???

最佳答案

serialVersionUID 是定义特定类的版本的字段,而 serializingdeserializing.. 考虑您有一个类的场景Employee 有 3 个已经投入生产一段时间的字段(这意味着可能存在许多员工对象的序列化版本),当您更新类以包含(比如第 4 个字段)时,所有以前的类(已序列化)不能强制转换或反序列化为新的类,您将收到异常。

为避免此问题,您可以使用 serialVersionUID 字段告诉 JVM 新类实际上是不同的版本(通过更改 serialVersionUID )。

@Farmor@Tom Jefferys 说的差不多,但举个例子,事情看起来要简单得多。

关于java - java中的serialVersionUID是什么,通常在异常类中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7187302/

相关文章:

java - 继承中的 ArrayStoreException

java - 将可打印文件转换为 PDF

c# - 使用 MarshalByRefObject 进行奇怪的 .NET 远程处理 SerializationException

java - JTextArea - 像 netbeans ide 一样自动格式化

c# - 在 C# 中反序列化 java 序列化文件

c# xml serialization 自定义 elementName

json - Jackson JSON 序列化 - 指定递归级别

Java Externalizable serialVersionUID

java - Eclipse中的serialVersionUID生成是否使用serialver?

java - java中默认和生成的串行版本uid有什么区别?