Есть ли деструктор для Java? Кажется, я не могу найти никакой документации по этому вопросу. Если нет, как я могу достичь того же эффекта?
Чтобы сделать мой вопрос более конкретным, я пишу приложение, которое работает с данными, и в спецификации говорится, что должна быть кнопка "сброс", которая возвращает приложение в исходное только что запущенное состояние. Однако все данные должны быть "живыми", если приложение не закрыто или не нажата кнопка сброса.
Будучи обычно программистом на C/C++, я думал, что это будет тривиально реализовать. (И, следовательно, я планировал реализовать его в последний раз.) Я структурировал свою программу так, чтобы все объекты с возможностью сброса находились в одном классе, чтобы я мог просто уничтожить все "живые" объекты при нажатии кнопки сброса.
Я думал, что если бы все, что я делал, это просто разыменовывал данные и ждал, когда сборщик мусора соберет их, не будет ли утечка памяти, если мой пользователь повторно введет данные и нажмет кнопку сброса? Я также думал, что поскольку Java достаточно зрел как язык, должен быть способ предотвратить это или изящно справиться с этим.