Java 对象ArrayList在反序列化后丢失字符串值?

Java 对象ArrayList在反序列化后丢失字符串值?,java,serialization,arraylist,Java,Serialization,Arraylist,所以我有一个三级的视频商店GUI,它应该保存库存中的视频记录。然而,它使用序列化保存视频对象,但出于某种原因,即使我没有收到任何错误,只有数值通过 请注意,最左边的三列和最右边的列都是空的。这是因为他们注定要在他们的字符串,但他们没有 正如我所说,我没有得到任何错误,所以这真的让我困惑 VideoStore.java(GUI类)的构造函数: 最后,ArrayList中的视频类: private static String videoName; private static String pro

所以我有一个三级的视频商店GUI,它应该保存库存中的视频记录。然而,它使用序列化保存视频对象,但出于某种原因,即使我没有收到任何错误,只有数值通过

请注意,最左边的三列和最右边的列都是空的。这是因为他们注定要在他们的字符串,但他们没有

正如我所说,我没有得到任何错误,所以这真的让我困惑

VideoStore.java(GUI类)的构造函数:

最后,ArrayList中的视频类:

private static String videoName;
private static String producer;
private static String rating;
private static String genre;
private short videoNumber;
private float videoPrice;

如果静态变量未序列化,则应将:

private String videoName;
private String producer;
private String rating;
private String genre;
private short videoNumber;
private float videoPrice;
在你的视频课上。 您应该放在可序列化类中的唯一静态变量是
serialVersionUID
(序列化和反序列化过程使用该变量)。例如:


如果静态变量未序列化,则应将:

private String videoName;
private String producer;
private String rating;
private String genre;
private short videoNumber;
private float videoPrice;
在你的视频课上。 您应该放在可序列化类中的唯一静态变量是
serialVersionUID
(序列化和反序列化过程使用该变量)。例如:


答案正确,但事实上,他们是静态的,这只是一个更大问题的标志。答案正确,但事实上,他们是静态的,这只是一个更大问题的标志。
private String videoName;
private String producer;
private String rating;
private String genre;
private short videoNumber;
private float videoPrice;
private static final long serialVersionUID = 1L;