A, B 및 C의 세 클래스가 있습니다. A는 변경 사항을 B에서 수신하고 B는 C를 청취합니다. C가 변경되면 notifyChange()가 on 이 청취자는, 그 청취 방법 B는 다음과 같습니다이다 :같은 이름의 notify-method를 사용하는 중첩 된 리스너
clientComp.setChangeListener(new NavigationClientCompositeListener() {
@Override
public void notifyChange() {
notifyChange();
}
});
B는 A와에이 알림을 전달하는 원하고, 여기 내 문제가있다. notifyChange() 메소드 내부의 notifyChange() 호출은 무한 루프를 발생시킵니다. notifyChange() -이 인터페이스 구현 내에서 B 클래스의 메서드를 참조하는 방법이 있습니까? 또는이 처음부터 나쁜 디자인입니까?
어떻게하면이 문제를 가장 잘 해결할 수 있습니까? 나는 물론 B의 메소드의 이름을 바꿀 수 있지만, 이렇게 많은 중첩 된 클래스가 있다면 그것은 ridicoulus가 될 것입니다. <class-name>.this
를 사용
완벽하니, 고마워! – Jake