JAVA :: 이벤트 리스너(1)

smi·2021년 2월 9일
2

JAVA (자바)

목록 보기
22/62
post-thumbnail

📝 이벤트 리스너

💬 이벤트를 처리하는 자바 프로그램 코드로서 컴포넌트에 연결되어야 작동되며, 클래스로 작성된다.

💬 리스너 인터페이스를 상속받고, 추상 메소드를 구현하여 이벤트 리스너를 작성한다.

💡 이벤트 리스너 인터페이스

추상 메소드는 모두 void이다.

👉 예시
interface ActionListener {
    public void actionPerformed(ActionEvent e); // Action 이벤트 발생 처리
}

💡 이벤트 리스너 작성

이벤트와 이벤트 리스너 선택

이벤트 리스너 클래스 작성

💬 독립 클래스를 이용한 이벤트 리스너 작성

💬 내부 클래스를 이용한 이벤트 리스너 작성

💬 익명 클래스로 이벤트 리스너 작성

🖐 이벤트 리스너 등록

일반적으로 컴포넌트에 이벤트 리스너를 등록할 때 다음과 같이 한다.

component.add~Listener(listener);

이벤트 리스너 작성 후 등록

// 독립, 내부 클래스 작성방법
b.addActionListener(new MyActionListener());  

class MyActionListener implements ActionListener { 
    public void actionPerformed(ActionEvent e) {
        ...
    }
} 

// 익명 클래스 작성방법
b.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        ...
    }
});    

📝 어댑터 클래스

💬 리스너 인터페이스의 추상 메소드를 단순 리턴하도록 미리 구현해 놓은 클래스를 제공한다.

💬 리스너 인터페이스의 메소드를 모두 구현하지 않아도 된다.

⚠ 리스너 인터페이스에 메소드가 하나뿐인 경우 어댑터 클래스가 없다.
class MyMouseListener implements MouseListener  //MouseListener를 이용한 경우
⇓
class MyMouseAdapter extends MouseAdapter  //MouseAdapter를 이용한 경우
profile
공부한 거 올려요 :)

0개의 댓글