예외처리 - Throw로 Exception 발생시키기

이상해씨·2023년 5월 10일
0

JAVA

목록 보기
38/40

Throw

  • 강제로 오류 발생
  • Throws와 보통 함께 사용됨
    public class ExceptionExam3 {
        public static void main(String[] args) {
            int i = 10;
            int j = 0;
            int k = divide(i, j);
            System.out.println(k);      
        }

        public static int divide(int i, int j){
            if(j == 0){
                System.out.println("2번째 매개변수는 0이면 안됩니다.");
                return 0;// 0/0 =0이 아님으로 오류를 자체적으로 발생
            }
            int k = i / j;
            return k;
        }
    }
 public class ExceptionExam3 {
        public static void main(String[] args) {
            int i = 10;
            int j = 0;
            int k = divide(i, j);
            System.out.println(k);

        }       
        public static int divide(int i, int j) throws IllegalArgumentException{
            if(j == 0){
                throw new IllegalArgumentException("0으로 나눌 수 없어요.");
            }
            int k = i / j;
            return k;
        }   
    }
  • throw 라인에서 exception 발생
  • new 연산자를 통해 Exception 객체 생성
	public class ExceptionExam3 {   
        public static void main(String[] args) {
            int i = 10;
            int j = 0;
            try{
                int k = divide(i, j);
                System.out.println(k);
            }catch(IllegalArgumentException e){// 여기서 exception 처리 
                System.out.println("0으로 나누면 안됩니다.");
            }           
        }

        public static int divide(int i, int j) throws IllegalArgumentException{
            if(j == 0){
                throw new IllegalArgumentException("0으로 나눌 수 없어요.");
            }
            int k = i / j;
            return k;
        }   
    }

참고

profile
공부에는 끝이 없다

0개의 댓글