자바 이상 단계 및 캡 처 예제 코드
자바 이상 시스템 의 근 류 는 Throwable 임 을 알 수 있 습 니 다.자바 코드 에 throw 가 이상 을 던 졌 을 때 뒤 를 따 르 는 대상 은 반드시 Throwable 또는 하위 클래스 의 대상 입 니 다.
그 다음 에 Exception(이상)과 Error 로 나 뉘 었 습 니 다.
그 중에서 Exception 이상 은 흔히 볼 수 있 는 NullPointer Exception 빈 포인터 이상 을 말 합 니 다.
Error 는 프로그램 코드 를 통 해 복구 할 수 없 는 치 명 적 인 오 류 를 말 합 니 다.예 를 들 어 OutOf Memory Error 메모리 넘 침 오류 등 입 니 다.
이상 메커니즘 을 잘 사용 할 수 있다 면 코드 사용 이 크게 향상 될 것 이다.
이번 시 뮬 레이 션 에서 이상 한 캡 처 를 검증 합 니 다.
코드 는 다음 과 같다.
public class ExceptionTest {
public static void main(String[] args) {
try{
int i = subtraction();
System.out.println(i);
}catch (Exception e){
System.out.println(" Exception :"+e);
e.printStackTrace();
}
}
public static int subtraction(){
int result = 0;
try {
result = 10 / 0;
}catch (RuntimeException e){
System.out.println(" RuntimeException "+e);
throw new RuntimeException(" ");
}
return result;
}
}
내 가 방법 을 호출 할 때,이 방법 은 runtime Exception 이상 을 던 집 니 다.그리고 이 방법 을 호출 한 프로그램 은 다른 처리 작업 이 있 을 수도 있 고 try..catch 처 리 를 한 다음 에 주 방법의 catch 가 실 행 될 지 검증 합 니 다.
결과 증명 회 집행
호출 된 방법 때문에 사용 합 니 다
throw new RuntimeException(" ");
이상 을 던 져 버 렸 습 니 다.위 에서 이상 을 잡 으 면 실 행 됩 니 다.나 는 일 을 하면 서 이 잘못 을 저 질 렀 다.
제 가 호출 된 방법 catch 를 사용 할 때 프로그램 에 있 는 데 이 터 를 부여 하고 호출 에 실패 한 상 태 를 부여 하기 때문에 결과 가 이상 하고 호출 된 측 이 캡 처 한 다음 에 호출 된 catch 는 데이터 상 태 를 알 수 없 는 이상 으로 바 꾸 어 결과 판단 에 영향 을 주 었 습 니 다.
결국 나 는 호출 자 코드 를 합 친 후에 캡 처 를 하나 더 했다.
public static void main(String[] args) {
try{
int a = 100 / 0;
}catch (RuntimeException e){
System.out.println(" RuntimeException :"+e);
throw new RuntimeException(e);
}catch (Exception e){
System.out.println(" Exception :"+e);
}
}
이번 에는 Runtime Exception 의 catch 만 실 행 했 습 니 다.이상 하 게 던 졌 음 에 도 불구 하고 Exception 의 catch 는 실행 되 지 않 았 습 니 다.
자바 이상 등급 과 캡 처 된 예제 코드 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.자바 캡 처 이상 내용 에 대해 서 는 이전 글 을 검색 하거나 아래 글 을 계속 찾 아 보 세 요.앞으로 도 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 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에 따라 라이센스가 부여됩니다.