디자인 모드 의 Command 모드 배우 기 (명령 모드)
우리 가 흔히 볼 수 있 는 상황 중 하 나 는 메뉴 명령, 버튼 감청 이다.다음은 자주 사용 하 는 간단 한 예 를 들 어 보 겠 습 니 다.
public class Test {
public static void main(String[] args) {
JButton jb = new JButton();
jb.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
doSomething();
}
});
}
}
JButton 을 디자인 할 때 우 리 는 사용자 가 어떤 방법 을 호출 할 지, 언제 호출 할 지 결정 할 수 없 기 때문에 우 리 는 외부 인 터 페 이 스 를 제공 하여 사용자 의 요구 에 응 하고 구체 적 인 응답 내용 을 외부 사용자 에 게 응답 내용 을 결정 합 니 다.위의 코드 와 같이 사용자 가 단 추 를 눌 렀 을 때 호출 하 는 방법의 actionPerformed () 는 이 단 추 를 만 들 때 특정한 명령 행동 에 대응 하 는 actionPerformed () 방법 을 사용 할 수 있 습 니 다.감청 대상 (Action Listener) 을 연결 합 니 다.
다음은 간단 한 예 를 사용 합 니 다. 예 를 들 어 온라인 게임 에서 무 기 를 전환 하여 적 을 맞이 해 야 합 니 다. 그러면 예 는 다음 과 같 습 니 다.
1.interface Weapon
package com.xuyi.command;
/**
* @author xuyi
*
*/
public interface Weapon {
public String switchWeapon();
}
2.Test.java
package com.xuyi.command;
//command - : command ,
public class Test {
private static void kill(Weapon weapon){
System.out.println(weapon.switchWeapon());
}
private static String doSomeThing(){
return " ";
}
public static void main(String[] args) {
//
Weapon weapon = new Weapon(){
public String switchWeapon() {
return doSomeThing();
}
};
// ,doSomeThing
kill(weapon);
}
}
3. command 모드 와 기타 모드 관계
1). command 모드 는 해석 기 모드 와 유사
2). Comsmand 모드 도 Factory 모드 와 유사 합 니 다. Factory 에서 사용 자 는 대상 을 언제 만 들 지 모 르 고 어떤 종 류 를 예화 해 야 할 지 모 릅 니 다.
3). Command 모드 도 위 에서 언급 한 actionListener 와 같이 다른 모드 와 함께 자주 사용 합 니 다. 우 리 는 보통 이 인 터 페 이 스 를 먼저 실현 한 다음 에 다시 사용 합 니 다.
addActionListener (this). 또는 현재 actionPerformed () 를 다른 클래스 로 패키지 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
디자인 모델 의 공장 모델, 단일 모델자바 는 23 가지 디자인 모델 (프로 그래 밍 사상/프로 그래 밍 방식) 이 있 습 니 다. 공장 모드 하나의 공장 류 를 만들어 같은 인 터 페 이 스 를 실현 한 일부 종 류 를 인 스 턴 스 로 만 드 는 것...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.