Исходя из фона C ++, мне нравится иметь некоторую "симметрию" в построении и разрушении объектов.Например, construtor выделяет ресурсы, присоединяет обработчики событий, а деструктор отключает обработчики событий и освобождает ресурсы в обратном порядке в качестве конструктора.
В C # я обычно использую шаблон «Dispose» для созданиятакое поведение.Я не использую деструктор, потому что последний может вызываться из случайного потока (насколько я понял), что может быть проблемой, если деконструкция моих объектов содержит вызовы пользовательского интерфейса.
Как я могу имитироватьтакое поведение в Java?Разве Java не подходит для этого?Java предпочитает другой подход, чем этот?Я не хотел бы использовать Java по-другому, чем он был разработан для использования.
Я искал на SO, но люди говорят, что не существует такого понятия, как деструктор (который я уже знал)или метод, подобный Dispose.Есть ли способ реализовать эту "симметрию" конструкции / разрушения без того, чтобы сборщик мусора вызывал часть разрушения из случайного потока?Или я смотрю на вещи неправильно?Спасибо.