Java 예외 처리(업데이트 중)

2358 단어 유난히
이상하다
이상은 프로그램이 실행되는 동안 발생하는 이벤트로 실행 중인 프로그램의 정상적인 명령 흐름을 중단합니다.
package swf;
public class Test {
	public static void main(String[] args){
		int result = 3/0;
		System.out.println(result);
	}
}

실행 결과는 다음과 같습니다.
Exception in thread "main" java.lang.ArithmeticException: / by zero
	at swf.Test.main(Test.java:14)

프로그램이 실행된 결과 보고서에 산수 이상 Arithmetic Exception이 발생하여 시스템이 더 이상 실행되지 않습니다.이런 상황은 이상이다.
2. 이상 처리 방법: 이상을 포착하고 이상을 던진다.
예 1(예외 캡처):
문자열을 정수로 변환하면 Integer 클래스의 parseInt () 방법으로 정상적으로 수행할 수 있습니다.그러나 이 문자열이 숫자 형식이 아니라면 parseInt () 방법은 이상을 던지고 프로그램은 이상이 발생한 위치에서 종료되며 다음 문장을 실행하지 않습니다.
package swf;
public class Test {
	public static void main(String[] args){
		String str = "lili";
		System.out.println(str+"   :");
		int age = Integer.parseInt("20L");
		System.out.println(age);
	}
}

실행 결과는 다음과 같습니다.
lili   :
Exception in thread "main" java.lang.NumberFormatException: For input string: "20L"
	at java.lang.NumberFormatException.forInputString(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at swf.Test.main(Test.java:7)

우리는 알림 정보인'lili 나이는:'이 이미 출력되었기 때문에 이 문장은 이상이 없고 변수age는 출력되지 않았습니다. 프로그램이 데이터 형식 변환을 실행할 때 종료되었음을 알 수 있습니다.
자바 언어의 이상 포획 구조는try,catch,finally 3부분으로 구성되며,try-catch 문장 블록 문법은 다음과 같다.
package swf;
public class Test {
	public static void main(String[] args){
		try{
			String str = "lili";
			System.out.println(str+"   :");
			int age = Integer.parseInt("20L");
			System.out.println(age);
		}catch(Exception e){
			e.printStackTrace();
		}
		System.out.println("program over");
	}
}

그중try문장 블록은 이상이 있을 수 있는 자바 문장을 저장합니다.try문장 블록에 이상이 발생하면 프로그램은catch 블록으로 이동하여 실행합니다.
lili   :
java.lang.NumberFormatException: For input string: "20L"
	at java.lang.NumberFormatException.forInputString(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at swf.Test.main(Test.java:25)
program over

또한 완전한 이상 처리 문장은finally 문장을 포함해야 한다.프로그램에서 이상이 발생하든지 않든try-catch가 순조롭게 실행되든지finally 문장을 실행합니다.(finally 문장에 이상이 있는 경우는 포함되지 않음)
예 2(이상 캡처):

좋은 웹페이지 즐겨찾기