본문 바로가기

개발자노트

예외와 예외처리(try, catch) 기본사용법

try-catch문

try{

            오류가 발생할 수 있는 코드;

      }catch (Exception 예외객체) {

          오류가발생했을때실행할코드;

      }

​

try{

            예외가발생할수있는코드;

      }catch(예외이름1 예외객체)  {

        예외이름1이발생했을때 실행되는영역;

      }catch(예외이름2 예외객체)  {

       예외이름2가발생했을때 실행되는영역;

      }...  {

​

  }finally  {

    강제종료전에무조건한번실행되는영역;

}
package class02;

import java.util.Scanner;

public class Test02 {

	public static void main(String[] args) {
		int[] data= {1,2,3};
		Scanner sc=new Scanner(System.in);
		System.out.println("인덱스 넘버 입력) ");
		int num=sc.nextInt();
		
		try {	// try로 예외가 발생할 만한 구간을 설정
			System.out.println("AAA");
			System.out.println(data[num]); // 예외 발생 즉시 try->catch로 즉시이동 
			System.out.println("BBB");
		}
		catch(ArrayIndexOutOfBoundsException e) { // 어떤 예외가 발생할지 catch
			// 예외처리는
			// 1- 무슨 에러였는지(개발자에게 보여지는것)
			// 2- 어떻게 해야하는지(사용자)
			e.printStackTrace();
			System.out.println("0~"+data.length+"미만 까지만 입력해주세요.");
		}
	}

}