Notice
Recent Posts
Recent Comments
Link
투케이2K
270. (java/자바) class , interface 사용해 콜백 (callback) 패턴 정의 및 수행 실시 본문
[개발 환경 설정]
개발 툴 : Eclipse
개발 언어 : Java
[소스 코드]
package ex6;
// [콜백 패턴 정의 클래스]
class CallObject {
// [내부 인터페이스 정의 실시]
interface CallBack {
public void onMessage(String message);
}
// [전역 변수 선언 실시]
CallBack callback;
// [클래스 생성자 초기화 실시]
public CallObject() {
this.callback = null; // [초기화]
}
// [콜백 지정 메소드 정의 실시]
public void setCallBack(CallBack callback) {
this.callback = callback; // [매핑]
}
// [콜백 실행 메소드 정의 실시]
public void excute(String inputData) {
// [인풋으로 들어온 데이터를 그대로 CallBack 인터페이스 onMessage 메소드로 전달]
this.callback.onMessage(inputData);
}
}
// [콜백 패턴 수행 클래스]
public class MainActivity16 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("");
System.out.println("================================");
System.out.println("[Program Start]");
System.out.println("================================");
System.out.println("");
// [CallObject 클래스 객체 생성 실시]
CallObject callObject = new CallObject();
// [콜백 리턴 이벤트를 받을 수 있는 메소드 정의 실시]
callObject.setCallBack(new CallObject.CallBack() {
@Override
public void onMessage(String message) {
// TODO Auto-generated method stub
System.out.println("");
System.out.println("================================");
System.out.println("[callback] : [onMessage]");
System.out.println("[message] : " + message);
System.out.println("================================");
System.out.println("");
}
});
// [excute 수행 실시]
for (int i=1; i<=2; i++) {
System.out.println("");
System.out.println("================================");
System.out.println("[excute] : [콜백 명령 전달] : " + String.valueOf(i));
System.out.println("================================");
System.out.println("");
callObject.excute(String.valueOf(i) + " : 투케이");
}
} // [메인 종료]
} // [클래스 종료]
[결과 출력]
반응형
'Java' 카테고리의 다른 글
272. (java/자바) Thread 스레드 사용해 동기 순차적 로직 처리 수행 실시 (0) | 2022.07.15 |
---|---|
271. (java/자바) 이벤트 리스너 (listener) 및 콜백 (callback) 정의 , 데이터 확인 실시 (0) | 2022.07.04 |
269. (java/자바) getChars 메소드 사용해 string 문자열 부분 데이터를 char 문자 배열에 삽입 실시 (0) | 2022.05.27 |
268. (java/자바) timeStamp to date 타임 스탬프 , 날짜 및 시간 데이터 형 변환 수행 실시 (0) | 2022.05.16 |
267. (java/자바) String repeat 문자열 반복을 사용해 지정한 카운트 만큼 반복 출력 실시 (0) | 2022.05.01 |
Comments