idea-java序列化serialversionUID自动生成

💖简介

java.io.SerializableJava 中的一个标记接口(marker interface),它没有任何方法或字段。当一个类实现了 Serializable 接口,那么这个类的对象就可以被序列化和反序列化。序列化是将对象的状态转换为字节流的过程,这样可以方便地将对象存储到文件中或者通过网络传输。反序列化则是从字节流恢复出对象状态的过程。Dubbo接口

📖实现序列化

要使一个类可序列化,只需要简单地实现 Serializable 接口即可

java 复制代码
public class Person implements Serializable {
    private static final long serialVersionUID = 1L;
    // 类的其他部分...
}

🌟serialVersionUID

  • 建议在实现 Serializable 的类中定义一个名为 serialVersionUID 的静态最终变量。这有助于确保序列化和反序列化过程中的兼容性。
  • 如果类的结构发生改变,而 serialVersionUID 没有相应更新,可能会导致 InvalidClassException 异常。

🔧配置

idea 配置serialVersionUID生成快捷键

idea -> Settins -> Editor -> Inspections ->serialVersionUID

勾选 Serializable class without 'serialVersionUlD'

⭐使用

选择需要自动生成serialVersionUID的类
Alt + Enter

选择Create constant field 'serialVersionUlD' in


结束

相关推荐
liuyang-neu1 小时前
力扣 简单 70.爬楼梯
java·算法·leetcode
喵手1 小时前
Java 与 Oracle 数据泵实操:数据导入导出的全方位指南
java·开发语言·oracle
开心工作室_kaic3 小时前
ssm010基于ssm的新能源汽车在线租赁管理系统(论文+源码)_kaic
java·前端·spring boot·后端·汽车
代码吐槽菌3 小时前
基于SSM的汽车客运站管理系统【附源码】
java·开发语言·数据库·spring boot·后端·汽车
zdkdchao3 小时前
jdk,openjdk,oraclejdk
java·开发语言
精致先生4 小时前
问题记录01
java·数据库·mybatis
Asin²+cos²=14 小时前
关于Android Studio Koala Feature Drop | 2024.1.2下载不了插件的解决办法
android·ide·android studio
小魏冬琅4 小时前
探索面向对象的高级特性与设计模式(2/5)
java·开发语言
TT哇4 小时前
【Java】数组的定义与使用
java·开发语言·笔记
瑞雪流年5 小时前
如何在vscode中使用鼠标滑轮滚动来改变字体大小
ide·vscode·编辑器