Java似乎没有提供PropertyChangeSupport的实现,但对注册的PropertyChangeListeners的引用很弱。
实现这一点并不是很难,但在重新发明轮子之前,是否有人知道这个功能是否已在任何开源库中实现?它似乎不是这样,但有人可能会更清楚地知道。
答案 0 :(得分:2)
this Netbeans WeakListeners page会有帮助吗?
示例:
public class Observer {
private Listener listener;
private void registerTo(Source source) {
listener = new Listener();
source.addChangeListener(WeakListeners.change (listener, source));
}
private class Listener implements ChangeListener {
public void stateChanged(ChangeEvent e) {
doSomething();
}
}
}