반응형
에러와 예외
보통 자바에서 하드웨어로 인한 프로그램의 실행 오류를 에러로 구분하고
프로그램 자체 내에서 발생하는 오류(잘못된 조작, 잘못된 코딩 등 소프트웨어적인 오류)를 예외라고 한다.
자바에서 예외는 크게 일반 예외와 실행 예외로 구분되어진다.
일반 예외(컴파일러 체크 예외)
컴파일러가 예외 처리 코드가 있는지 없는지 체크하여 없으면 개발자가 예외 처리 코드를 작성하도록 한다.
# java.lang.Exception을 상속받은 클래스들을 일반 예외라고 부른다.
실행 예외
반대로 실행 예외의 경우엔 컴파일러가 따로 체크를 하지 않는데 그 이유는 언제 실행 예외가 발생할지 알 수 없기 때문이다.
# java.lang.RuntimeException을 상속받은 클래스들을 실행 예외라고 부른다.
실행 예외의 종류
* NullPointerException
- 가장 빈번하게 발생하는 실행 예외로서 객체 참조가 없는 상태의 참조 변수로 객체 접근 연산자 도트를 사용할 경우 발생
ex) String str = null; str.length(); //str이 객체를 갖고 있지 않는데 객체에 접근하는 연산자를 사용
* ArrayIndexOutofBoundsException
- 배열에서 인덱스 범위를 초과할 경우
* NumberFormatException
- 문자열을 숫자로 변환하는 경우
* ClassCastException
- 클래스간 타입 변환할 때 발생하며 주로 강제 타입 변환할 경우에 많이 발생
반응형
'Language > Java' 카테고리의 다른 글
Java 예외 처리 (0) | 2022.06.12 |
---|---|
Java 익명 객체 (0) | 2022.06.12 |
Java 중첩 클래스와 중첩 인터페이스 (0) | 2022.06.11 |
Java 타입 변환과 다형성 (0) | 2022.06.06 |
Java 인터페이스 (0) | 2022.05.30 |