우리는 기본 클래스와 이벤트 리스너 approch를 사용하여 기본 클래스와 이벤트 리스너 인터페이스로 애플리케이션을 설계했습니다. 기본 클래스는 모든 작업을 호출 한 후 적절한 이벤트 리스너 메소드를 호출합니다. 내 구현을 작성이 작품 이후java의 이벤트 리스너
abstract class Base
{
private MyEventListener eventListener; /* this member injected */
public abstract void operation_1();
public void doOperation_1()
{
eventListener.preOperation(); /* call listener before invoking main operation_1 implementation */
operation_1(); /* call main operation_1 implementation */
eventListener.postOperation(); /* call listener after invoking main operation_1 implementation */
}
}
을 : 다음과 같은
class MyEventListenerImpl implements MyEventListener
{
@Override
public void postOperation()
{
System.out.println("Do previous operation");
}
@Override
public void preOperation()
{
System.out.println("Do post operation");
}
}
가 그럼 난 기본 클래스를 작성 :
import java.util.EventListener;
public interface MyEventListener extends EventListener
{
public void preOperation();
public void postOperation();
}
그럼 내가 다음으로,이 인터페이스를 구현 : 코드를 따르는 것은 내 디자인을 보여줍니다 Base 클래스에 추가하고 operation_1 메소드를 구현하십시오. 나는 java.util.EventListener의 마커 인터페이스에서이 방법을 수행하지만, 설계 후 내 문제는 다른 클래스를 참조하십시오
- 추상 클래스 java.util의 패키지에 으로 EventListenerProxy합니다.
- EventListenerSupport org.apache.commons.lang3.event 패키지의 제네릭 클래스입니다.
나는이 클래스를 결코 사용하지 않는다. 나는 두 가지를 알고 싶어 :. 내 디자인에 대한
- 귀하의 의견을 (좋은 또는 나쁜)
- 가장 좋은 방법은 (가 말했다 클래스 또는 제 3 자 프레임 워크) 이벤트 리스너 접근
내 수신기는 샘플이며 실제 수신기 메서드에는 매개 변수가 있습니다. – MJM
그렇다면 실제 디자인을 보여주지 않고도 어떤 문제를 해결할 지 말하지 말고 디자인에 대해 논의 해 줄 것을 요청하셨습니까? –
이벤트 리스너를위한 디자인은 모든 수업과 모든 인터페이스가 아닌 토론합니다. 그 이유는 크고 내 질문에 유용하지 않기 때문입니다. – MJM