Я использую java для отображения огромного графика. У меня есть объект персонализированного класса с этой картой, он состоит из нескольких карт hasmap и вызывает другие персонализированные классы, которые также состоят из объектов varios.
Моя проблема в том, что каждый раз, когда я запускаю это, чтобы выполнить тесты для сопоставления всего требуется около 5 минут, а затем для каждого узла может потребоваться от 1 до 10 минут для выполнения некоторых вычислений. И каждый раз, когда мне нужно исправить что-то в коде, мне приходится ждать.
Итак, мой вопрос(ы)
есть ли способ сохранить основной класс объектов (который состоит из нескольких примитивных и непримитивных объектов) в виде двоичного файла, который я могу сохранить один раз, а затем читать?
Как будет происходить синтаксический анализ?
Я начал изучать FileOutputStream/ObjectOutputStream и FileInputStream/ObjectInputStream, но я не уверен, что правильно понял, являются ли они хорошими вариантами для этой ситуации.
Буду очень признателен за любые комментарии и советы.
ОБНОВЛЕНИЕ: я прикрепляю код, который пытался использовать для сохранения объекта класса.
FileOutputStream fos = new FileOutputStream("tbox.dat");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(tboxObject);
oos.flush();
oos.close();
Это для первого запуска, после этого я поменял код на:
FileInputStream fis = new FileInputStream("tbox.dat");
ObjectInputStream ois = new ObjectInputStream(fis);
tboxObject savedTboxObject = (tboxObject) ois.readObject();
я добавлю, что это объекты, состоящие не только из целых чисел и строк, но и из хэш-карт, списков и массивов других, также сложных объектов.