JAVA

JAVA - Event 작성법

로픽 2016. 8. 2. 20:50
300x250

JAVA - Event 작성법


Event 작성 순서

 1. Event를 작성하고자 하는 대상 객체와 Event클래스의 종류를 선정한다.

 2. 대상 객체에게 해당 Event의 Handler를 추가한다.

 3. 해당 Event 발생시 처리될 내용을 정의한 객체를 생성한다. -> 'Event 구현 객체'



1. Event를 작성하고자 하는 대상 객체와 Event클래스의 종류를 선정한다.

ex) 닫기 버튼을 눌렸을 때 프레임이 종료되기 원할때

        - 대상 객체 : 닫기 버튼, Event 클래스 종류 : action(마우스를 통해서 버튼 클릭)


2. 대상 객체에게 해당 Event의 Handler를 추가한다.

     - Event 추가

        대상_객체.addEvent_종류Listener(Event_구현_객체);

      ex) 닫기 버튼을 눌렸을 때 프레임이 종료되기 원할때

        - bt.addActionListener(this);


3.  해당 Event 발생시 처리될 내용을 정의한 객체를 생성한다. -> 'Event 구현 객체' (start() 메소드가 구현 객체)

    - 3가지 방법을 통해서 Event 구현 객체를 생성한다.

    ** Event 객체 정의 유형

      1) Listener를 구현하거나 Adapter를 상속받은 임의의 클래스를 생성하는 방법

      2) 현재 클래스에 Listener를 구현하는 방법

      3) 익명 중첩 클래스를 사용하는 방법



 3-1) Listener를 구현하거나 Adapter를 상속받은 임의의 클래스를 생성하는 방법

  - Event 핸들러에 Listener와 Adapter가 있는지 먼저 확인을 한다.

  (둘 다 있는 경우는 Adapter를 사용하고 Adapter가 없는 경우는 Listener를 사용한다. -> Listener의 경우 인터페이스이므로 모든 추상 메소드를 재정의      해야하기 때문이다.)

  - 존재하는 클래스를 임의로 생성해 낸다.

   ex) class ActionDefine implements ActionListener{   

public void actionPerformed(ActionEvent e){

재정의.....

}

}

  - Event 구현 객체위한 클래스

     Event 구현 객체 - ActionDefine ad = new ActionDefine();


3-1 ) Listener나 Adapter를 상속받은 임의의 클래스를 생성하는 방법


java



3-2) 현재 클래스에 Listener를 구현하는 방법

  - 현재 클래스(Round19_Ex01_Sub)에 Listener를 구현하는 방법이다.(이미 Frame을 상속 받기 때문에 인터페이스 구현 밖에 할 수 없다.)

  - 단일 상속의 단점을 Listener를 통해서 해결 가능하다.

  - implements를 통해서 Listener 구현을 하고 추상메소드를 재정의해주면 된다.



3-2 ) 현재 클래스에 Listener를 구현하는 방법


java


3-3) 익명 중첩 클래스를 사용하는 방법

 - 클래스를 만들거나 현재 클래스에 구현할 필요없이 필요한 부분마다 빠르게 event를 취해줄 수 있는 방법

 - 객체의 특징인 재사용이 불가능하지만 간단하고 빠르게 처리가능


 ex) new ActionListener()도 Action타입의 객체이다.

 *** ActionListener는 인터페이스이기 때문에 바로 객체의 발생이 불가능하고 객체를 발생시키려면 추상메소드의 재정의가 필요하다.



3-3 ) 익명 중첩 클래스를 사용하는 방법

*** start()메소드의 Event추가 부분에 익명 중첩 클래스를 사용하고 있다.


자바

반응형