2017-09-04 24 views

答えて

1

tab.removeChangeListener(null)を呼び出すとどうなりますか?

まさにこの:listenerListprotected EventListenerList listenerList = new EventListenerList();

として宣言され

public void removeChangeListener(ChangeListener l) { 
    listenerList.remove(ChangeListener.class, l); 
} 

および削除方法であって:

JTabbedPaneのにこのメソッドが呼び出され

public synchronized <T extends EventListener> void remove(Class<T> t, T l) { 
    if (l ==null) { 
     // In an ideal world, we would do an assertion here 
     // to help developers know they are probably doing 
     // something wrong 
     return; 
    } 
    ... 
    ... 

したがって、nullを削除すると、リスナーは影響を受けないまま返されます。

関連する問題