简单程序中的类序列化,我应该担心吗?

时间:2010-11-06 00:16:50

标签: java

我在java中使用Swing组件处理一个非常简单的项目 我有一个类,当完成所有语句后,Eclipse用黄线强调它并给出警告“可序列化的类HelloComponent不声明类型为long的静态最终serialVersionUID”

该程序运行正常,但每当我创建除主要类别以外的任何类别时,我都会收到此警告......我现在应该担心吗?我是java的初学者。

5 个答案:

答案 0 :(得分:1)

如果您的应用程序没有进行任何对象序列化,则可以忽略此警告。

(即使它确实如此,应用程序仍然可以工作。只是在序列化的类更改时序列化将更加脆弱。)

答案 1 :(得分:0)

当您将鼠标悬停在它上面时,Eclipse应该为您提供为其创建它的选项。您也可以选择该选项,让Eclipse为您填写。

您可以在Java Practices -> Implementing Serializable阅读一些指南。

答案 2 :(得分:0)

仅当您的应用程序要序列化对象并持久存储数据时,警告才适用。序列化Swing组件是没有意义的。

答案 3 :(得分:0)

如果您不打算进行任何序列化,可以放心地忽略它。但是,根据您的应用程序的作用...其他框架/库可能需要序列化才能正常工作。 (即对象保存,远程过程调用,数据库交互。)

如果有疑问,只需让ecilpse自动创建它。

答案 4 :(得分:0)

正如其他人所解释的,如果您的应用程序不进行任何序列化,您可以忽略该警告。

Eclipse可以帮助您生成serialVersionUid属性。否则,您可以通过@SuppressWarnings("serial");

为您的课程添加注释