Possible Duplicate:
What does it mean: The serializable class does not declare a static final serialVersionUID field?
Java 编译器警告:可序列化类 [*****] 未声明 long 类型的静态最终 serialVersionUID 字段。
为什么?如何解决?
最佳答案
这解释得很好here :
The serialVersionUID is a universal version identifier for a Serializable class. Deserialization uses this number to ensure that a loaded class corresponds exactly to a serialized object. If no match is found, then an InvalidClassException is thrown.
您可以通过添加来修复错误
private static final long serialVersionUID = 7526472295622776147L; // unique id
到类(class)。
进一步阅读:
附注:如果您使用的是 Eclipse,并且您(并且没有其他人)打算序列化您的类,您也可以通过转到
来抑制错误窗口 → 首选项 → Java → 编译器 → 错误/警告
并在“Serializable Class without serialVersionUID”上选择“Ignore”。
关于java - "declare a static final serialVersionUID"警告是什么意思以及如何解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5632065/