| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
| 31 |
- 2차원 배열
- extends
- super()
- scanner
- 인터페이스
- rs.next()
- Break
- docker
- 이중 배열
- 중첩for문
- Else If
- 메소드
- Integer.MIN_VALUE
- 자바
- 삼항 연산
- 문자열
- interface
- 이클립스
- 오버로딩
- 상속
- jsp
- Integer.MAX_VALUE
- 다형성
- for문
- 상수
- arraylist
- 배열
- If
- 삼항 연산식
- javascript
- Today
- Total
개발로드
☆KDT 2024-02-05★Try-Catch문을 활용한 예외처리 본문
소개
Java에서 프로그래밍을 하다보면 다양한 예외 상황에 직면하게 됩니다. 예외상황을 처리하고 안정성을 유지하기 위해서 try-catch문을 사용합니다. 오늘 포스트에서 예외처리를 제대로 이해하고 효과적으로 사용하는 방법을 소개해드리겠습니다.
Exception과 Error의 차이점
1) Error : 프로그램 코드에 의해서 수습할 수 없는 심각한 오류
메모리 부족, thread 죽음, ....
2) Exception : 사용자의 잘못된 조작 또는 개발자의 잘못된 코
딩으로 발생하는 프로그램 오류
프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류
예외 클래스의 일반예외, 실행예외
1) 일반 예외(Checked Exception) : 컴파일 전에 체크, 컴파일자체가 불가
Exception
ClassNotFoundException
InterruptedException
IOException
FileNotFoundException
.....
2) 실행예외(UnChecked Exption = RuntimeException) : 실행시 체크
컴파일에는 문제없지만 실행하다 예외가 발생하면
프로그램이 종료됨
Exception
ArirhmeticException - 수학적으로 문제 있을 때
ClassCastException - 타입변환이 잘못 되었을 때
IndexOutOfBoundsException
NullPointerException
....
예외 처리의 중요성
소프트웨어 개발 과정에서 예기치 않은 상황이 발생 했을때 제대로 처리하지 않으면 프로그램이 비정상적으로 종료될 수 있습니다. 예외처리로 프로그램의 안정성을 보장해줍니다.
Try-Catch문 기초
문법

동작원리
1) try 블록 안에 있는 코드가 실행 됩니다.
2) 예외가 발생한다면 해당 예외를 처리할 수 있는 catch 블록이 실행됩니다.
3) finally 블록은 예외의 발생 여부와 상관없이 항상 실행됩니다.
다중 예외 처리
try ~ catch 블록을 여러 개 사용 가능
발생한 예외 객체를 받을 수 있는 catch 블록 실행
위에서 아래로 실행, 범위가 좁은 것 부터 써야 함
문법

Throwable 클래스의 주요 메소드
getMessage() : Throwable 객체의 자세한 메시지를 반환
toString() : Throwable 객체의 간단한 메시지를 반환
printStackTrace() : Throwable 객체와 예외 추적 정보를 콘솔 뷰에 출력
예외의 전가(throws)
예외처리를 자신이 호출된 지점으로 전가(떠넘기기)
이 경우 예외처리는 전가 받은 상위 위치에서 처리
메소드명(...) throws 예외 클래스
리턴타입 메소드명(입력매개변수,...) throws 예외클래스명 { 예외발생코드 }
문법

마치며
적절한 예외 처리는 프로그램의 안정서을 높이는 데 중요한 역할을 합니다. 효과적인 예외 처리를 위해 다양한 예외 상황에 대응할 수 있는 기술을 익히고 적절한 대응 방법을 적용해야 합니다!
여유가 되신다면 제 GitHub에 오셔서 좋은 코드들을 구경해주세요!

https://github.com/gimpo5975?tab=repositories
gimpo5975 - Overview
gimpo5975 has 2 repositories available. Follow their code on GitHub.
github.com

'JAVA' 카테고리의 다른 글
| ☆KDT 2024-02-08★Comparable (0) | 2024.02.08 |
|---|---|
| ★KDT 2024-02-06☆StringTokenizer (0) | 2024.02.06 |
| ★KDT 2024-02-02☆열거형(enum) (0) | 2024.02.02 |
| ☆KDT 2024-02-01★객체지향프로그래밍 도형그리기 (0) | 2024.02.01 |
| ★KDT 2024-01-31☆상속과 다형성 (0) | 2024.01.31 |