ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Java - Try, Catch
    Java 2018. 1. 23. 08:58
    반응형
    public class Main {

        public static void main(String[] args) {
            
            String data1 = "12345";
            String data2 = "asdfg";
            
            try {//예외 발생이 예상되는 지점
                int val1 = Integer.parseInt(data1);
                int val2 = Integer.parseInt(data2);
            }catch(NumberFormatException e) {//NumberFormatException 발생시 실행 할 코드
                System.out.println("입력된 값에 문자가 있는지 확인 해 주세요");
                System.out.println(e.toString());
            }finally {//예외 발생에 상관 없이 무조건 실행
                System.out.println("data1: "+data1);
                System.out.println("data2: "+data2);
            }
        }

    }




    < Multi Catch >

    public class MultiCatch {
        public static void main(String[] args) {//arrayIndex, numberFormat              
            String[] var = new String[2];       
            try {           
                var[0] = "12345";
                var[1] = "a12345";
                var[2] = "a2w4e";//ArrayIndexOutOfExcaption         
                int val1 = Integer.parseInt(var[0]);
                int val2 = Integer.parseInt(var[1]);//NumberFormatException
            }catch(ArrayIndexOutOfBoundsException e) {
                System.out.println("배열의 크기보다 많은 값이 들어 갔습니다.");
            }catch(NumberFormatException e) {
                System.out.println("문자 형태는 변환이 불가능 합니다.");
            }finally {
                System.out.println("끝~!");
            }   
        }
    }


    < OrCatch >

    public class OrCatch {
        public static void main(String[] args) {
            String[] var = new String[2];       
            try {           
                var[0] = "12345";
                var[1] = "a12345";
                var[2] = "a2w4e";//ArrayIndexOutOfExcaption         
                int val1 = Integer.parseInt(var[0]);
                int val2 = Integer.parseInt(var[1]);//NumberFormatException
            }catch(ArrayIndexOutOfBoundsException | NumberFormatException e) {
                System.out.println("배열 크기 또는 문자형태를 확인 해 주세요!");
            }finally {
                System.out.println("끝~!");
            }   
        }
    }


    < PolyException >

    public class PolyException {

        public static void main(String[] args) {
            String[] var = new String[2];       
            try {           
                var[0] = "12345";
                var[1] = "a12345";
                var[2] = "a2w4e";//ArrayIndexOutOfExcaption         
                int val1 = Integer.parseInt(var[0]);
                int val2 = Integer.parseInt(var[1]);//NumberFormatException
            }catch(Exception e) {
                System.out.println(e.toString());//예외에 대한 간단한 메시지
                e.printStackTrace();//예외대한 상세한 내용
            }finally {
                System.out.println("끝~!");
            }
        }

    }


    반응형

    'Java' 카테고리의 다른 글

    Java - String  (0) 2018.01.23
    Java - throws  (0) 2018.01.23
    Java - Api 참고 사이트  (0) 2018.01.23
    Java - Interface  (0) 2018.01.19
    Java - 추상화 (Abstraction)  (0) 2018.01.19

    댓글

Designed by Tistory.