Sha*_*han 3 java serialization serialversionuid
我遇到了一个异常处理程序类,它扩展了异常,如下所示:
public class AppFileReaderException extends Exception {
//Explicit serialization UID added
private static final long serialVersionUID = -2458461415998318236L;
public AppFileReaderException(String msg)
{
super(msg);
}
Run Code Online (Sandbox Code Playgroud)
作者使用了显式序列化版本UID,并在其他类似的异常处理程序类中忽略了它.基于我从另一篇SO帖子中理解的内容,如果应用程序没有使用任何序列化和反序列化,我们可以忽略序列化UID.奇怪的是,作者使用了否定的UID.我很想知道这是有效还是推荐的做法.有没有其他理由使用负序列版本的VID?
Jon*_*eet 12
有没有其他理由使用负序列版本的VID?
如果你看到任何"随机查看"显式serialVersionUID,它可能是由IDE生成的,通常从UID开始,如果没有提供显式版本,则会生成UID.
序列化版本UID就像哈希码 - 值的大小实际上是无关紧要的; 除了区分价值之外,正面和负面都是毫无意义的.
| 归档时间: |
|
| 查看次数: |
1961 次 |
| 最近记录: |