当前位置:首页 > 系统教程 > 电脑知识学习 >

serialVersionUID如何生成?serialVersionUID有什么作用?

时间:2017-06-14  来源:中国好系统  阅读:统计中... 次  评论:0 次(查看

serialVersionUID如何生成?在程序开发的过程中经常需要把类序列化,不过在类系列化之前需要生成一个serialVersionUID,我们可以通过三种方法得到serialVersionUID,具体过程请看下文。

serialVersionUID如何生成?serialVersionUID有什么作用?

生成serialVersionUID之前需要序列化类

1、这里我用的是MyEclipse工具,先打开MyEclipse,然后点击导航上面的【File】菜单,然后选择New,在点击Java Project,来新建个测试工程,如下图所示。

serialVersionUID如何生成?serialVersionUID有什么作用?

2、新建好工程后,选中新建的工程名称,然后点击鼠标右键,选择【New】,然后在右侧选择点击Class,来创建生成serialVersionUID的类,如下图所示。

serialVersionUID如何生成?serialVersionUID有什么作用?

3、新建的类一定要实现Serializable这个序列化类,只有继续这个类后,才能生成serialVersionUID。继承后,在我们的开发工具里就会有黄色提醒,代码如下:

  1. 01import java.io.Serializable;
  2. 02public class SerialVersionUID implements Serializable {
  3. 03private String name = "jingyan";
  4. 04public String getName() {
  5. 05return name;
  6. 06}
  7. 07public void setName(String name) {
  8. 08this.name = name;
  9. 09}
  10. 10}

一、生成默认的serialVersionUID

1、在上面创建好继承序列化接口的类后,我们直接点击左侧的黄色亮点,然后在弹出菜单里,点击【Add default serial version ID】这个选项,就可以自动生成serialVersionUID了,如下图所示。

serialVersionUID如何生成?serialVersionUID有什么作用?

2、点击后,开发工具就会给我们自动生成了serialVersionUID。

  1. 01private static final long serialVersionUID = 1L;

注意:这个自动生成后的1L是不能自己修改的。

serialVersionUID如何生成?serialVersionUID有什么作用?

二、生成串行serialVersionUID

1、这种方法也是直接点击左侧的黄色亮点,然后在弹出菜单里,点击【Add generated serial version ID】这个选项,就可以自动生成serialVersionUID了,如下图所示。

serialVersionUID如何生成?serialVersionUID有什么作用?

2、点击后,开发工具就会给我们自动生成了一个serialVersionUID。

  1. 01private static final long serialVersionUID = 5573832826736049153L;

注意:这个自动生成后的一窜数字是不能自己修改的。

serialVersionUID如何生成?serialVersionUID有什么作用?

三、注解生成serialVersionUID

这种方法也很简单,也是直接点击左侧的黄色亮点,然后在弹出菜单里,点击【Add @SuppressWarnings serial to serialVersionUID】这个选项,这样就可以了,如下图所示。

serialVersionUID如何生成?serialVersionUID有什么作用?

点击后,开发工具就会并没有给我们像上面一样生成一窜数字,而是在类名上面加了个@SuppressWarnings(“serial”)。这样就实现了serialVersionUID,如下图所示。

serialVersionUID如何生成?serialVersionUID有什么作用?

以上三种方法便是生成serialVersionUID最快速的方法,用户可以选择一个自己觉得顺手的生成serialVersionUID的方法,以便于日后使用。

------分隔线------
  • 网友评论
  • 系统教程分类
  • 热点专题推荐