프로그래밍 언어/JAVA
Catch/ throw
jjonse
2023. 1. 25. 18:20
try~catch란?
- try {
예외가 발생할 것으로 예상되는 코드
} catch(잡을 예외) {
예외 잡은 이후 실행할 내용
}
try {
System.out.println(10 / 0);
} catch(ArithmeticException e) {
System.out.println("내가 잡은 예외 : " +e); //내가잡은예외 : ArithmeticException
}
throw란?
- 안쪽에서 발생한 예외를 잡아서 main 메소드에 던져버린다.
- 예외를 받은 메인 메소드에서도 예외를 던질 수 있지만 메인 메소드에서는 가급적이면 try~catch로 예외를 처리하는 것이 좋다.
!!여기서 잠깐!!
- 메소드 안에서 try~catch를 할 수 있는데 굳이 throw로 예외를 던지는 이유가 무엇일까?
- 그 이유는 반복되는 동일한 예외를 메인에서 한꺼번에 처리하기 위해서다.
- 문제가 발생하면 예외를 전부 메인에게 보내고 그 메인이 처리하는 것이 코드상 효율적이다.