标签: serialversionuid

什么是serialVersionUID,我为什么要使用它?

serialVersionUID缺少时,Eclipse会发出警告.

可序列化类Foo不声明long类型的静态最终serialVersionUID字段

serialVersionUID它是什么以及为什么重要?请显示缺失serialVersionUID会导致问题的示例.

java serialization serialversionuid

2880
推荐指数
21
解决办法
86万
查看次数

它是什么意思:serializable类没有声明一个静态的final serialVersionUID字段?

我在标题中给出了警告信息.我想了解并删除它.我在这个问题上找到了一些答案,但由于技术术语过载,我不理解这些答案.用简单的词语解释这个问题有可能吗?

PS我知道OOP是什么.我知道什么是对象,类,方法,字段和实例化.

PPS如果有人需要我的代码,它在这里:

import java.awt.*;
import javax.swing.*;


public class HelloWorldSwing extends JFrame {

        JTextArea m_resultArea = new JTextArea(6, 30);

        //====================================================== constructor
        public HelloWorldSwing() {
            //... Set initial text, scrolling, and border.
            m_resultArea.setText("Enter more text to see scrollbars");
            JScrollPane scrollingArea = new JScrollPane(m_resultArea);
            scrollingArea.setBorder(BorderFactory.createEmptyBorder(10,5,10,5));

            // Get the content pane, set layout, add to center
            Container content = this.getContentPane();
            content.setLayout(new BorderLayout());
            content.add(scrollingArea, BorderLayout.CENTER);
            this.pack();
        }

        public static void createAndViewJFrame() {
            JFrame win = new HelloWorldSwing();
            win.setTitle("TextAreaDemo");
            win.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            win.setVisible(true);
        }

        //============================================================= main
        public …
Run Code Online (Sandbox Code Playgroud)

java serializable serialversionuid

208
推荐指数
5
解决办法
20万
查看次数

为什么要生成long serialVersionUID而不是简单的1L?

当类在Eclipse中实现Serializable时,我有两个选项:添加默认值serialVersionUID(1L)或生成serialVersionUID(3567653491060394677L).我认为第一个更酷,但很多时候我看到人们使用第二个选项.有没有理由生成long serialVersionUID

java serialization code-generation serialversionuid

204
推荐指数
6
解决办法
8万
查看次数

使用serialVersionUID还是禁止警告?

我想创建一个类,例如,扩展HttpServlet?我的编译器警告我,我的类应该有一个serialVersionUID.如果我知道这个对象永远不会被序列化,我应该定义它还是添加注释来抑制这些警告?

你会做什么以及为什么?

java serialization serialversionuid

66
推荐指数
6
解决办法
3万
查看次数

抽象类是否应该具有serialVersionUID

在java中,如果一个类实现Serializable但是是抽象的,它是否应该声明一个longVersionUID,或者子类只需要它?

在这种情况下,确实意图是所有子类都处理序列化,因为该类型的目的是在RMI调用中使用.

java serialization abstract-class serialversionuid

62
推荐指数
3
解决办法
2万
查看次数

为什么我的异常类需要序列化?

当你使用类Exception扩展一个类(用于创建新的异常)时,你会得到一个警告serialVersionUID.我知道serialVersionUID在序列化和反序列化时它起着重要作用,但是当我的异常需要被序列化时?任何人都可以给我一个实际案例,我希望我的自定义异常类具有序列化和反序列化?

java serialization exception serialversionuid deserialization

43
推荐指数
3
解决办法
2万
查看次数

摆脱Eclipse生成的serialVersionUID上面的注释

这已成为我的一个宠儿.我写了一个课,并实施Serializible.然后eclipse警告我,我没有serialVersionUID,所以我选择" 添加生成的serialVersionUID "或" 添加默认的serialVersionUID ",我最终得到这样的东西:

  /**
   * 
   */
  private static final long serialVersionUID = 4049849541314027178L;
Run Code Online (Sandbox Code Playgroud)

大多数时候我不想添加评论,所以我必须去删除评论.我宁愿默认是没有评论,但我已经查看了偏好中的代码模板,并没有想出如何更改它.我只是希望它看起来像这样:

  private static final long serialVersionUID = 4049849541314027178L;
Run Code Online (Sandbox Code Playgroud)

java eclipse comments serializable serialversionuid

29
推荐指数
1
解决办法
2370
查看次数

显式serialVersionUID被认为有害吗?

我可能会冒这个问题冒险.

在我看来,为新类显式指定serialVersionUID是不好的.考虑两种情况,即在布局应该更改时不更改它,并在不应该更改时更改它.

不应该改变它何时应该被改变发生几乎只有在它是明确的时候.在这种情况下,它会导致一些非常微妙,难以发现的错误.特别是在开发过程中,当类布局经常变化时.但是如果它没有明确指定,它将会改变并且反序列化将大声破坏,最有可能通过清除存储库来解决.

不应该发生的情况几乎只有在隐含时才会发生.这是一种罕见的情况,其中类布局已更改但我们仍希望从旧的序列化blob反序列化.这可能会在QA期间被捕获(从5.2升级到5.2.1之后的奇怪错误,请参阅附加的堆栈跟踪),并且可以通过设置显式值来轻松修复.

评论?

java serialization serialversionuid

25
推荐指数
2
解决办法
5958
查看次数

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

可能重复:
我为什么要打扰serialVersionUID?

我正在经历一些异常处理代码,我看到了一些名为serialVersionUID的东西.这个uid用于什么?是否仅限于例外或可以在所有类中使用??? 这个id有什么好处???

java serialization serialversionuid

25
推荐指数
2
解决办法
3万
查看次数

查找序列化对象的serialVersionUID

有没有办法确定serialVersionUID序列化Java对象的生成?

问题是我序列化了一个对象而没有明确指定serialVersionUID.现在反序列化过程抱怨类不兼容.但是我并没有以一种使它不兼容的方式改变这个类.所以我假设serialVersionUID在类中指定它就足够了,因为它存储在对象数据中.为了做到这一点,我需要serialVersionUID从序列化数据中读取.

java serialization serialversionuid

19
推荐指数
4
解决办法
2万
查看次数