JAVA 이상 분류 및 처리 분석
만약 에 어떤 방법 이 정상 적 인 경로 로 임 무 를 완성 하지 못 하면 다른 경 로 를 통 해 종료 할 수 있 습 니 다.이런 상황 에서 잘못된 정 보 를 봉 인 된 대상 을 던 집 니 다.이때 이 방법 은 즉시 종료 되 고 그 어떠한 값 도 되 돌려 주지 않 습 니 다.이 방법 을 사용 하 는 다른 코드 도 계속 실행 할 수 없습니다.이상 처리 메커니즘 은 코드 실행 을 이상 처리 장치 에 맡 길 것 이다.
Throwable 은 JAVA 언어 에서 모든 오류 나 이상 한 초 클래스 이 며,다음 층 은 error 나 Exception 으로 나 뉜 다.
Error:
Error 클래스 는 시스템 의 내부 오류 와 자원 이 소 진 된 오 류 를 말 합 니 다.프로그램 은 이러한 대상 을 던 지지 않 습 니 다.이러한 오류 가 발생 하면 프로그램 은 가능 한 한 안전하게 종 료 됩 니 다.
Exception 에는 두 가지 가 있 습 니 다.하 나 는 실행 시 이상 Runtime Exception 이 고 하 나 는 이상 Checked Exception 을 검사 하 는 것 입 니 다.
Runtime Exception 예:NullPointerException,ClassCastException;하 나 는 I/O 오류 로 인 한 IOException,SQLException 등 이상 CheckedException 을 검사 하 는 것 입 니 다.Runtime Exception 은 자바 가상 컴퓨터 가 정상적으로 작 동 하 는 동안 던 질 수 있 는 이상 한 초 류 입 니 다.Runtime Exception 이 생 긴 다 면,자신의 잘못 일 것 이다.
검사 이상 CheckedException:일반적으로 외부 오류 입 니 다.이러한 이상 은 컴 파일 단계 에서 발생 합 니 다.자바 컴 파일 러 는 이러한 이상 을 강제로 캡 처 합 니 다.즉,이 이상 이 발생 할 수 있 는 프로그램 을 try catch 하 라 고 요구 할 수 있 습 니 다.이러한 이상 은 보통 몇 가지 측면 을 포함 합 니 다.
1.파일 끝 에서 데 이 터 를 읽 으 려 고 시도 합 니 다.
2.잘못된 형식의 URL 을 열 려 고 합 니 다.
3.주어진 문자열 에 따라 class 대상 을 찾 으 려 고 합 니 다.이 문자열 은 클래스 가 존재 하지 않 습 니 다.
이상 처리 방법 은:
문제 가 발생 하면 처리 하지 않 고 계속 호출 자 에 게 던 지고 이상 을 던 지 는 방식 은 세 가지 가 있 습 니 다.하 나 는 throw 이 고,다른 하 나 는 throws 이 며,또 하 나 는 시스템 자동 으로 이상 을 던 지 는 것 입 니 다.
public static void main(String[] args) {
String s = "abc";
if(s.equals("abc")) {
throw new NumberFormatException();
} else {
System.out.println(s);
}
}
int div(int a,int b) throws Exception{
return a/b;}
thr catch 캡 처 이상 맞 춤 형 처리 방식.throw 와 throws 의 차이 점:
위치 가 다르다
1.throws 는 함수 에 사용 되 고 뒤 에는 이상 류 를 따라 여러 개 를 따라 갈 수 있 습 니 다.throw 는 함수 에 사용 되 고 뒤 에는 이상 대상 을 따른다.
기능 이 다 름:
2.throws 는 호출 자가 이 기능 에 발생 할 수 있 는 문제 만 알 고 미리 처리 할 수 있 도록 이상 을 설명 합 니 다.throw 는 구체 적 인 문제 대상 을 던 지고 throw 로 실행 하면 기능 이 끝 납 니 다.호출 자로 이동 하고 구체 적 인 문제 대상 을 호출 자 에 게 던 집 니 다.즉,throw 문 구 는 독립 적 으로 존재 할 때 다른 문 구 를 정의 하지 마 십시오.실행 할 수 없 기 때 문 입 니 다.
3.throws 는 이상 이 발생 할 가능성 을 나타 내 는데 반드시 이러한 이상 이 발생 하 는 것 은 아니다.throw 는 이상 을 던 졌 고 throw 를 실행 하면 이상 한 대상 을 던 졌 을 것 이다.
4.둘 다 이상 을 소극 적 으로 처리 하 는 방식 입 니 다.이상 을 던 지 거나 던 질 수 있 지만 함수 에 의 해 이상 을 처리 하지 않 습 니 다.진정한 처리 이상 은 함수 의 상부 호출 에 의 해 처 리 됩 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.