2015-01-16 2 views
-3

코드의이 섹션이 무엇을 의미하는지 정확히 모르겠습니다.이 코드는 정확히 무엇을 의미합니까?

try { 
    startGame(Integer.parseInt(clickedButton.getLabel())); 
} catch (Exception ex) { 
    Logger.getLogger(JavaGame.class.getName()).log(Level.SEVERE, null, ex); 
+4

이해가 안되면 어떨까요? – aioobe

답변

1

Integer.parseInt()String에 걸리고 int를 반환합니다. 따라서 해당 버튼의 레이블은 숫자 값을 보유하는 String이어야합니다. startGame 방법은 시작할 게임을 알기 위해 int을 가져와야합니다. 라벨이 이고 번호가 인 경우 NumberFormatException을 던져 catch 블록으로 이동합니다.

catch 부분은 log4j이며 로그 파일 및/또는 콘솔 (구성에 따라 다름)에 예외로 출력됩니다.

0

Integer.parseInt()가 clickedButton의 레이블에있는 문자열을 변환 할 수없는 경우 오류가 발생합니다.

그러면 오류가 try catch에 의해 catch되고 발생한 스택 추적과 함께 심각한 수준의 로그 메시지가 생성됩니다.

clickedButton의 Label이 숫자가 아니기 때문에 예외가 발생했습니다.

+1

'그것은 예외를 던집니다 ...'). – Tom

+0

@ Tom Ya는 나를 때려칩니다. 개발자 구성에 따라 보낼 뿐이지 메시지를 기록하지 않습니다. – Stultuske

+0

@Stultuske, 나는 보내기보다는 작성을 사용했습니다. –