코드의이 섹션이 무엇을 의미하는지 정확히 모르겠습니다.이 코드는 정확히 무엇을 의미합니까?
try {
startGame(Integer.parseInt(clickedButton.getLabel()));
} catch (Exception ex) {
Logger.getLogger(JavaGame.class.getName()).log(Level.SEVERE, null, ex);
코드의이 섹션이 무엇을 의미하는지 정확히 모르겠습니다.이 코드는 정확히 무엇을 의미합니까?
try {
startGame(Integer.parseInt(clickedButton.getLabel()));
} catch (Exception ex) {
Logger.getLogger(JavaGame.class.getName()).log(Level.SEVERE, null, ex);
Integer.parseInt()
는 String
에 걸리고 int
를 반환합니다. 따라서 해당 버튼의 레이블은 숫자 값을 보유하는 String이어야합니다. startGame
방법은 시작할 게임을 알기 위해 int
을 가져와야합니다. 라벨이 이고 번호가 인 경우 NumberFormatException
을 던져 catch
블록으로 이동합니다.
catch
부분은 log4j
이며 로그 파일 및/또는 콘솔 (구성에 따라 다름)에 예외로 출력됩니다.
Integer.parseInt()가 clickedButton의 레이블에있는 문자열을 변환 할 수없는 경우 오류가 발생합니다.
그러면 오류가 try catch에 의해 catch되고 발생한 스택 추적과 함께 심각한 수준의 로그 메시지가 생성됩니다.
clickedButton의 Label이 숫자가 아니기 때문에 예외가 발생했습니다.
이해가 안되면 어떨까요? – aioobe