✔️ 오류(Error)
- 오류(Error)는 시스템이 종료되어야 할 수준의 상황과 같이 수습할 수 없는 심각한 문제
- 미리 기대한 값을 얻을 수 없거나 혹은 어떤 상태가 일관적이지 못한 상황
✔️ 예외(Exception)
- 개발자가 구현한 로직에서 발생한 실수나 사용자의 영향에 의해 발생
- 미리 예측하여 방지할 수 있기에 상황에 맞는 예외처리(Exception Handle)를 해야 한다.
예외(Exception)과 오류(Error)의 차이점
어떤 값이나 상태를 미리 파악할 수 있는가는 점이다.
어떤 값을 얻을 수 있거나 어떤 문제가 발생할 상황을 미리 예상해서 별도의 루틴으로 처리하면 예외(Exception), 예상한 어떤 값을 얻을 수 없거나 어떤 상황이 일관적이지 않다면 오류(Error).
오류(Error)
컴파일 에러(compile-time error): 컴파일 시에 발생하는 에러
런타임 에러(runtime error): 실행 시에 발생하는 에러
논리적 에러(logical error): 실행은 되지만, 의도와 다르게 동작하는 것
- 컴파일 에러: 소스코드(*.java)에 대해 오타나 잘못된 구문, 자료형 체크 등의 기본적인 검사에서 오류가 있을 때에 발생한다.
- 런타임 에러: 컴파일이 잘 수행되고 클래스 파일을 생성하여 실행하였다고 해도 프로그램 실행 시에 동작을 멈춘 상태로 오랜 시간 지속되거나, 갑자기 프로그램이 실행을 멈추고 종료되는 경우 등
'CS' 카테고리의 다른 글
알고리즘 - 정렬 알고리즘 (1) | 2023.12.24 |
---|---|
[면접] static 변수 (1) | 2023.12.23 |
[면접] Java Collection - List, Set, Map (1) | 2023.12.22 |
4. 자료 구조 요약 정리 (0) | 2023.12.18 |
4.3 비선형 자료구조 (3) | 2023.12.18 |