Java 如何在XML反序列化后自动执行方法?

Java 如何在XML反序列化后自动执行方法?,java,xml,serialization,xml-serialization,xml-deserialization,Java,Xml,Serialization,Xml Serialization,Xml Deserialization,我有一个包含我序列化的不同图形元素的类。我使用默认构造函数中实例化的变量。为了正确放置我的项目,我会在创建此变量后重新定位。但是在反序列化期间,反序列化的属性在构造函数中不可用。因此,在创建对象并正确反序列化所有属性之后,我将运行一个方法 我该怎么做 (对于序列化和反序列化,我使用JavaBeans XMLEncoder和XMLDecoder) 编辑: 事实上,引起我问题的类是一个类容器的属性,它与一般类的属性相同 工作表扩展JPanel->JPanel左容器->按钮扩展 JButton She

我有一个包含我序列化的不同图形元素的类。我使用默认构造函数中实例化的变量。为了正确放置我的项目,我会在创建此变量后重新定位。但是在反序列化期间,反序列化的属性在构造函数中不可用。因此,在创建对象并正确反序列化所有属性之后,我将运行一个方法

我该怎么做

(对于序列化和反序列化,我使用JavaBeans XMLEncoder和XMLDecoder)

编辑:

事实上,引起我问题的类是一个类容器的属性,它与一般类的属性相同

工作表扩展JPanel->JPanel左容器->按钮扩展 JButton


Sheet是我序列化的类,从而序列化Button类。

使用XMLDecoder后,需要对每个需要它的对象调用postDeserialization()方法。这是一个好主意,但在我的例子中实现起来不太实际。实际上,这个类本身包含在另一个也被序列化的类中(我修改了我的帖子)。它迫使我通过所有中间getter方法来达到这个属性,知道他可以有as值null。此外,这不是唯一一个有同样问题的人。