Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Tags
- 다이어그램
- 인스턴스
- vb.net
- Git_명령어정리
- Linux_명령어정리
- 배열
- workbench
- SQL
- 이클립스
- Git_정리
- json
- 자바스크립트
- JavaScript
- Spring_오류정리
- github
- CSS
- git
- 인덱스
- 자바
- MySQL
- SQL_용어정리
- Linux
- DML
- java
- 아파치톰캣
- asp.net
- Spring_에러정리
- jsp
- spring
- HTML
Archives
- Today
- Total
데브마우스
[Java] 예외 발생하는 throw와 예외를 던지는 throws 정리 본문
예외 발생하는 throw
자바에서는 예외도 하나의 객체입니다. 그렇기에 고의적으로 예외를 생성할 수 있습니다.
예외를 발생하면 해당 메서드에서 예외가 발생됩니다.
public class Main {
public static void main(String[] args) {
try {
Exception e = new Exception("고의 예외");
throw e;
} catch(Exception e) {
e.printStackTrace(); // 출력:고의 예외
}
}
}
예외를 던지는 throws #예외 던지기
앞서 throw가 예외를 자기 자신이 처리했다면 throws는 예외를 자기 자신이 처리하지 않고 다른 메서드에서 예외를 처리하도록 합니다.
public class Main {
public static void main(String[] args) {
try {
System.out.println("try 구문입니다.");
method1st();
} catch (Exception e) {
// TODO Auto-generated catch block
System.out.println("catch 구문입니다.");
e.printStackTrace();
}
}
public static void method1st() throws Exception {
method2nd(); // method2nd를 호출합니다.
}
public static void method2nd() throws Exception {
System.out.println("method2nd 입니다.");
Exception e = new Exception();
throw e;
}
}
결론
개발자는 예외 처리를 어떻게 할 것인지 상황에 따라서 현명하게 선택해야합니다.
'Java > Java: 문법 정리' 카테고리의 다른 글
| [Java] 사용자 정의 예외(Exception) 정리 (0) | 2024.01.13 |
|---|---|
| [Java] 추상 메서드와 추상 클래스 정리 (0) | 2024.01.13 |
| [Java] 예외 처리(try-catch-finally) 정리 (0) | 2024.01.13 |
| [Java] 내부 클래스 정리 (0) | 2024.01.13 |
| [Java] 다형성 정리 (0) | 2024.01.13 |