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


结束

相关推荐
HZZD_HZZD2 小时前
DL/T 645-2026新国标深度解读与智能电表协议适配实战:从帧结构变化到Java采集器升级的全链路改造方案
java·开发语言
山登绝顶我为峰 3(^v^)34 小时前
C/C++ 交叉编译方法
java·c语言·c++
一叶飘零_sweeeet4 小时前
Codex 与 Claude Code 深度拆解:两代 AI 编程智能体的技术本质与 Java 实战指南
java·ai·codex·claude code
Listen·Rain5 小时前
提示词和提示词模板
java·人工智能·spring boot
wuqingshun3141595 小时前
重写equals而不重写hashCode,会出什么问题?
java·开发语言
我今晚不熬夜5 小时前
Java语言实现Modbus协议通过用串口读取数据(以RTU为例)
java·网络协议
小锋java12346 小时前
Maven 4 要来了:15 年后,Java 构建工具迎来"彻底重构"
java·maven
卓怡学长6 小时前
w269基于spring boot + vue 候鸟监测数据管理系统
java·数据库·spring boot·spring·intellij-idea
孫治AllenSun7 小时前
【MDC】使用 MDC 封装一个 LogMdcUtil 工具类
java·spring boot·后端