当在属性更改监听器中使用匿名内部类时,类在对象生命周期的哪个时刻被垃圾回收?在包含类(SettingsNode)被释放之后吗?我是否应该在包含类(SettingsNode)的 finalizer 中显式地删除 PropertyChangeListener?
public class SettingsNode extends AbstractNode
{
public SettingsNode(Project project, ProjectSettings projectSettings)
throws IntrospectionException
{
// use an anonymous inner class to listen for changes
projectSettings.addPropertyChangeListener(ProjectSettings.PROP_NAME,
new PropertyChangeListener()
{
@Override
public void propertyChange(PropertyChangeEvent evt)
{
// handle event
}
});
}
}