ExceptionProgram (KarelOOP2)

Retired DISLab
Swpark (토론 | 기여) 사용자의 2020년 10월 20일 (화) 23:19 버전
(비교) ← 이전 판 | 현재 판 (비교) | 다음 판 → (비교)
이동: 둘러보기, 찾기
/*
 * Copyright 2020 Sangwon Park @ DISLab, HUFS
 * 
 * 이것은 ErrorException을 처리하는 코드 예제이다.
 * 기본적으로 만들어진 캐럴은 (1, 1) 좌표에 동쪽으로 향해있다.
 * 두 번째 만든 캐럴은 (2, 1)에 서쪽으로 향해있다.
 * 두 번째 캐럴을 앞으로 전진시키면 두 캐럴이 부딪혀 예외가 발생한다.
 * 이 예외를 받아서 바닥에 붉은 피를 흘리고 뒤로 튕겨져 나오는 예제이다.
 */
package cp.java.week11.exception;
 
import acm.util.ErrorException;
import hufs.dislab.karel.IKarel;
import hufs.dislab.karel.IKarelProgram;
import hufs.dislab.karel.SimpleKarel;
 
@SuppressWarnings("serial")
public class ExceptionProgram extends IKarelProgram {
	IKarel karel;
 
	@Override
	protected void onInit() {
		karel = new SimpleKarel();
		addIKarel(karel, 2, 1, WEST, 0);
	}
 
	@Override
	protected void onStart() {
		try {
			karel.move();
		} catch (ErrorException e) {
			karel.paintCorner(RED);
			karel.turnAround();
			karel.move();
		}
	}
 
	public static void main(String[] args) {
		IKarelProgram.main(args, new SimpleKarel());
	}
}
개인 도구
이름공간
변수
행위
둘러보기
구성원
연구
연구실
기타
도구모음
인쇄/내보내기