1. 순서대로 try catch로 잡아내는법

    import java.util.InputMismatchException;
    import java.util.Scanner;
    
    public class ExceptionTest1 {
    
    	public ExceptionTest1() {
    		try {
    			//예외처리하기
    			//예외 발생 가능한 코드와 예외 발생가능성이 없는 코드도 명시가 가능하다.
                
    			Scanner sc = new Scanner(System.in);
    			System.out.print("정수를 입력하세요 = ");
    			int n = sc.nextInt();
    			System.out.println("n = "+ n);
                
    		}catch(InputMismatchException ime) { //int 부분에 문자열을넣으면 에러나는 부분을 예외처리로 잡음
    			//try 영역의 코드가 예외가 발생하면 실행될 영역
    			//ime.printStackTrace();
                
    			System.out.println(ime.getMessage());
    			System.out.println("숫자를 잘못입력하였습니다. ");
    		}
    		System.out.println("프로그램 종료되었습니다.");
    	}
    
    	public static void main(String[] args) {
    		new ExceptionTest1();
    
    	}
    
    }
    

    2.예외 한번잡고 전부다 동일한 증상으로 하는법

    import java.util.Scanner;
    
    public class ExceptionEx2 {
    	Scanner sc =  new Scanner(System.in);
    	public ExceptionEx2() {
    		try {
    			System.out.print("첫번쨰 수 => ");
    			int num1 = Integer.parseInt(sc.nextLine());
    
    			System.out.print("두번째 수 => ");
    			int num2 = Integer.parseInt(sc.nextLine());   // --!!!! NumberFormatException
    			
    			int result = num1 * num2;
    			int result2 = num1 / num2;  //---- 0으로 나누기 ArithmeticException
    			
    			System.out.println(num1 + "*" + num2 + "= " + result);
    			System.out.printf("%d/%d=%d\n", num1, num2, result2);
    			
    			String names[] = {"세종대왕", "이순신"};   
    			for (int i = 0; i <=names.length; i++) {  //배열 index ArrayIndexOUtOfBoundsException
    				System.out.println("names["+i+"]= "+ names[i]);
    			}
    		}catch(ArrayIndexOutOfBoundsException aoe) {
    			System.out.println("배열에서 예외 발생");
    		}catch(Exception e) { //위에 catch를 제외한 나머지
    			System.out.println("0을 제외한 정수를 입력하세요 .. ->" + e.getMessage());
    		}
    	}
    
    
    	public static void main (String args[]) {
    		new ExceptionEx2();
    	}
    }

     

    • 네이버 블러그 공유하기
    • 네이버 밴드에 공유하기
    • 페이스북 공유하기
    • 카카오스토리 공유하기