자바

JAVA 자바 예외처리: 예외 처리 코드

알통몬_ 2017. 3. 13. 10:59
반응형


안녕하세요 알통몬입니다.

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^

 

예외 처리 코드

 예외 처리 코드는 try - catch - finally 블록을 이용합니다. 

try - catch - finally 블록은 생성자 내부에서 작성되어 일반 예외와 실행 예외가 발생할 경우 

예외 처리를 할 수 있도록 해줍니다. 



이클립스는 일반 예외가 발생할 가능성이 있는 코드를 작성하면 

빨간 밑줄을 그어 예외 처리 코드의 필요성을 알려준다.

예제)

public class TryCatchFinallyExample {

public static void main(String[] args) {


Class clazz = Class.forName("java.lang.String2");



}

 

}


이럴 경우에 try - catch - finally 문을 사용합니다.

예제)

public class TryCatchFinallyExample {

public static void main(String[] args) {

try {

Class clazz = Class.forName("java.lang.String2");

} catch(ClassNotFoundException e) {

System.out.println("클래스가 존재하지 않습니다.");

}

}

}



ClassNotFoundException같은 일반예외는 컴파일러가 

예외처리코드의 필요성을 알려주지만, 

ArrayIndexOutOfBoundsException이나 NumberFormatException과 같은 실행 예외는 

오로지 개발자의 경험에 의해서 예외 처리 코드를 아래 예제처럼 작성해주어야 합니다.

예제)

public class TryCatchFinallyRuntimeExceptionExample {

public static void main(String[] args) {

String data1 = null;

String data2 = null;

try {

data1 = args[0];

data2 = args[1];

} catch(ArrayIndexOutOfBoundsException e) {

System.out.println("실행 매개값의 수가 부족합니다.");

System.out.println("[실행 방법]");

System.out.println("java TryCatchFinallyRuntimeExceptionExample  num1  num2");

return;

try { 

int value1 = Integer.parseInt(data1);

int value2 = Integer.parseInt(data2);

int result = value1 + value2;

System.out.println(data1 + "+" + data2 + "=" + result);

} catch(NumberFormatException e) {

System.out.println("숫자로 변환할 수 없습니다.");

} finally {

System.out.println("다시 실행하세요.");

}

}

}

반응형