오류란?
1 . 컴파일 오류(Complile error)
: 프로그램 코드 작성 중 발생하는 문법적 오류
2 . 실행 오류(Runtime error)
: 실행 중인 프로그램이 의도하지 않은 동작을 하거나 프로그램이 중지되는 오류
- 실행 오류 시 비정산 종료는 서비스 운영에 치명적
- 오류가 발생할 수 있는 경우 로그를 남겨 추후 이를 분석하여 원인을 찾아야 함
- 자바는 예외 처리를 통하여 프로그램의 비정상 종료를 막고 로그를 남길 수 있음
오류와 예외 클래스
1. 시스템 오류(error)
: 가상 머신에서 발생, 프로그래머가 처리 할 수 없음
: 동적 메모리가 없는 경우, 스택 오버 플로우 등
2. 예외 (Exception)
: 프로그램에서 제어 할 수 있는 오류
: 읽어 들이려는 파일이 존재하지 않는 경우, 네트윅 연결이 끊어진 경우
예외 클래스의 종류
- 모든 예외 클래스의 최상휘 클래스 Exception
- 다양한 예외 클래스가 제공됨
try-with-resources문
- 리소스를 자동 해제하도록 제공해주는 구문
- close() 를 명시적으로 호출하지 않아도 try{} 블록에서 열린 리소스는 정상적인 경우, 예외 발생한 경우 모두 자동 해제 됨
- 해당 리소스가 AutoCloseable을 구현해야 함
- FilelnputStream의 경우 AutoCloseable을 구현하고 있음
사용자 정의 예외
- JDK에서 제공되는 얘외 클래스 외에 사용자가 필요에 의해 예외 클래스를 정의하여 사용
- 기존 JDK 예외클래스 중 가장 유사한 클래스에서 상속
- 기본적으로 Exception에서 상속해도 됨
사용자 정의 예외 클래스 예제
- 전달 받은 아이디의 값이 null이거나 8자 이하 20자 이상인 경우 예외 발생 시킴
'자바' 카테고리의 다른 글
[Java] JSX, API, 한글 설정 해보기 (0) | 2023.09.20 |
---|---|
java 웹프로그래밍 초기설정 (0) | 2023.09.06 |
[Java] 백준 기초 8 (1) | 2023.01.08 |
[Java] 스트림 (1) | 2023.01.08 |
[Java] 내부클래스, 람다식 (1) | 2023.01.08 |