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+"미만 까지만 입력해주세요.");
}
}
}