디자인 패턴
[디자인 패턴] 5. 콜백 메서드
Song hyun
2024. 9. 25. 15:21
728x90
반응형
[디자인 패턴] 5. 콜백 메서드
1. 콜백 메서드란?
(1) 콜백 메서드 개념: 콜백 메서드는 특정한 작업이 완료되었을 때, 또는 특정 이벤트가 발생했을 때 호출되는 메서드이다.
(2) 콜백 메서드의 특징:
-콜백 메서드는 주로 비동기 작업, 이벤트 기반 시스템에서 사용된다.
-콜백 메서드를 활용하면 동작을 정의하고, 나중에 실행할 수 있기 때문에 프로그램이 더 유연해지고 모듈화될 수 있다!
2. 시나리오 코드 : 버튼 클릭 이벤트 처리
(1) Button.java
package ch01;
// 콜백 메서드 만들어보기
// 인터페이스 만들기
/**
* 버튼 클릭 이벤트 인터페이스 (콜백 메서드 정의)
*/
interface IButtonListener{
void clickEvent(String event);
}
// 버튼 클리새
public class Button {
String name; // 버튼 이름
// 중요!
private IButtonListener buttonListener; // 버튼에 연결된 리스너 (콜백 메서드)
public Button(String name){
this.name = name;
}
// 버튼이 클릭되었을 때 콜백 메서드 호출
public void click(String message){
if(buttonListener != null){
buttonListener.clickEvent(message); // 버튼 클릭 이벤트 발생
}
}
public void addEventListener(IButtonListener iButtonListener){
this.buttonListener = iButtonListener;
}
}
(2) MainTest.java
package ch01;
public class mainTest {
// 버튼 클래스 생성
public static void main(String[] args) {
Button button = new Button("나의 버튼");
// 버튼 인스턴스에 콜백 메서드 동작 정의
button.addEventListener( new IButtonListener(){
@Override
public void clickEvent(String event) {
System.out.println("-------------");
System.out.println(">> 콜백 메서드 실행 <<");
System.out.println(event);
System.out.println("-------------");
};
});
button.click("안녕 홍길동");
}
}
728x90
반응형