자바 중 이상 던 지기: throw throws
1536 단어 자바 상용 도구 클래스
문법:
public class ExceptionTest{ public void 방법 명 (매개 변수 목록) throws 이상 목록 { //호출 시 이상 한 방법 을 던 지 거나 새로운 이상 을 던 집 니 다 (throw new Exception ();). } }
주: throws 이상 목록 은 방법 체 앞 에 있 습 니 다. 다양한 종류의 이상 을 던 질 수 있 습 니 다. 유형 별로 쉼표 로 구분 할 수 있 습 니 다.
예 를 들 면:
public class ExceptionTest{
public void divide(int one,int two) throws Exception{
if(two==0){
throw new Exception("两数相除,除数不能为0!");
}
else{
System.out.println("两数相除,结果为:"+one/two);
}
}
}
만약 에 어떤 방법 이 호출 되면 이상 한 방법 을 던 질 수 있 고 다음 과 같은 두 가지 해결 방안 이 있다.
1. try - catch 를 추가 하여 이상 포착 처리
예 를 들 면:
public class ExceptionTest {
public static void main(String[] args) {
try{
divide(5,0); // 调用了会抛出异常的方法divide();
}catch(Exception e){
System.out.println(e.getMessage());
}
}
public static void divide(int one,int two) throws Exception{
if(two==0){
throw new Exception("两数相除,除数不能为0!");
}
else{
System.out.println("两数相除,结果为:"+one/two);
}
}
}
실행 결과:
두 수 를 나 누 면 0 이 될 수 없습니다!
2. throws 성명 을 추가 하여 이전 호출 자 에 게 이상 을 던 집 니 다 (이 방법 은 이상 을 처리 할 수 없습니다. 이상 을 다시 던 집 니 다)
예 를 들 면:
public class ExceptionTest {
public static void main(String[] args) throws Exception { //添加throws声明
divide(5,0);
}
public static void divide(int one,int two) throws Exception{
if(two==0){
throw new Exception("两数相除,除数不能为0!");
}
else{
System.out.println("两数相除,结果为:"+one/two);
}
}
}