在序列化的过程中,对象被转化为字节流以便存储或传输。反序列化时,根据字节流重建对象实例。需要注意的是,Java 的默认序列化机制通过反射直接创建对象实例并填充字段值,因此不依赖无参构造器,也无需调用 setter 方法。
然而,一些第三方序列化框架(如 Jackson、Gson)在反序列化时通常需要无参构造器来创建对象实例。如果类中没有无参构造器,可以显式提供一个无参构造器,或在构造器中提供默认值以满足需求。
总结来说,默认的 Java 序列化机制对无参构造器没有要求,但为提高兼容性,建议为可序列化的类提供一个无参构造器。
#(第三方序列化框架(如 Jackson)在序列化的时候必须有无参构造
于 2023-04-18 22:49:55 首次发布