예외처리 문법(try-catch문)
import java.util.Scanner;

//예외처리 문법
public class Exam_01 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		// 예외 처리 : try-catch
		
		try {
			//예외가 발생할 것으로 예상되는 코드를 넣는다.
			
			//Integer.parseInt(sc.nextLine());
			//System.out.println("A");
			System.out.print("숫자를 입력하세요 : ");
			int num = Integer.parseInt(sc.nextLine());
			System.out.println("입력하신 숫자는 : " + num);
			//try문에는 꼭 catch문이 따라온다.
		} catch(Exception e) {
			//예외가 발생했을 경우의 실행문
			//예외가 발생하지 않았을 경우에는 실행되지 않는다.
			//catch문의 () 에는 해당 catch문을 통해 예외처리를 실행할 예외의 종류를 기입하게 됨.(이후 배움)

			
			//System.out.println("B");
			System.out.println("입력값이 숫자가 아닙니다.");
		}
		//System.out.println("C");
		System.out.println("예제종료.");

		/*
		 * Integer.parseInt(sc.nextLine());에 예외가 발생하지 않으면
		 * try문의 syso "A"와 바깥의 "C"가 출력되고,
		 * 
		 * 예외가 발생할 경우 try문의 Integer.parseInt 이후
		 * 예외발생지점 직후 바로 throw로 튕겨져 나가서 syso "A"가 출력되지 않고,
		 * 예외가 발생했기 때문에 catch문의 syso "B"가 실행되고
		 * 예외가 발생했지만 try-catch로 예외처리가 되었기 때문에 
		 * 프로그램이 정상적으로 계속 진행되어
		 * 그 이후에 바깥에 syso "C"가 출력된다.
		 * 
		 */
	}
}

'자바 프로그래밍 > 코드' 카테고리의 다른 글

난수(Random Number)  (0) 2020.02.11
지역 변수(Local Variable)의 성질  (0) 2020.02.11
계산기 프로그램  (0) 2020.02.11
별 출력하기  (0) 2020.02.11
이중반목문(이중for문)  (0) 2020.02.11