使用Java Serializable保存第二个对象的数组

使用Java Serializable保存第二个对象的数组,java,arrays,xml,object,serializable,Java,Arrays,Xml,Object,Serializable,我有一个叫做“设置”的类,它有一个数组“UniverseOut” 当我通过命令更改设置类中的“projectName”时,它会更改它,当我保存项目并重新启动应用程序时,它将完全读取名称,不会出现任何错误 但是UniverseOut数组根本没有被保存,它只是说数组来自该类型,但是值/对象本身没有被保存 public class UniverseOut implements Serializable { /** * */ private static final long serialVer

我有一个叫做“设置”的类,它有一个数组“UniverseOut”

当我通过命令更改设置类中的“projectName”时,它会更改它,当我保存项目并重新启动应用程序时,它将完全读取名称,不会出现任何错误

但是UniverseOut数组根本没有被保存,它只是说数组来自该类型,但是值/对象本身没有被保存

public class UniverseOut implements Serializable {

/**
 * 
 */
private static final long serialVersionUID = -1326425548448853224L;
private static final int max_ip = 10;
private static String[] ip = new String[max_ip];

}
这是我如何将对象保存为XML文件的代码:

        String path = System.getProperty("user.dir");
        FileOutputStream fos = new FileOutputStream(path + "\\" + projectname + ".project");
        XMLEncoder xml = new XMLEncoder(fos);
        xml.setExceptionListener(new ExceptionListener() {
            public void exceptionThrown(Exception e) {
                System.out.println("Exception! :" + e.toString());
            }
        });
        xml.writeObject(getSettings());
        xml.close();
        fos.close();
        fos = new FileOutputStream(path + "\\last-project.project");
        xml = new XMLEncoder(fos);
        xml.writeObject(getSettings());
        xml.close();
        fos.close();
正在创建文件,其外观如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<java version="13.0.2" class="java.beans.XMLDecoder">
 <object class="preferences.Settings" id="Settings0">
  <void property="projectName">
   <string>lol</string>
  </void>
  <void property="universeOut">
   <void index="0">
    <object class="preferences.UniverseOut"/>
   </void>
   <void index="1">
    <object class="preferences.UniverseOut"/>
   </void>
  </void>
 </object>
</java>

英雄联盟

我很有信心这个数组应该包含一些内容,但是它没有保存。

如果
universieout
没有任何非静态字段要序列化,那么就没有什么可以保存的,因为。

谢谢,这帮了我的忙!我忘了Java bean不允许静态!现在它工作得很好!
public class UniverseOut implements Serializable {

/**
 * 
 */
private static final long serialVersionUID = -1326425548448853224L;
private static final int max_ip = 10;
private static String[] ip = new String[max_ip];

}