9.59 checked exceptionの乱用を避ける

1037 ワード

checked exceptionでは、呼び出し元がtry/catchを使用して取得する必要があります.そうしないと、コンパイル時にエラーが表示されます.例外がリカバリできない場合、または呼び出し元が取得した後に次の処理しかできない場合は、checked exceptionを使用しないでください.
try{//...}
catch(TheCheckedException e){
  throw new AssertionError();//      
}

try{//....}
catch(TheCheckedException e){
  e.printStackTrace();
  System.exit(i);//      
}

 
メソッドがchecked exceptionを1つしか放出しない場合は、次のようなステータステストメソッドを提供することが考えられます.
//NotOKToInvokeException checked exception,    
public void sayHello() throws NotOKToInvokeException(){
}

 
sayHello()はchecked exceptionを1つしか投げていないので、次のように変更できます.
//NotOKToInvokeException   unchecked exception
//            
public void sayHello() throws NotOKToInvokeException(){
}

//      ,       false,    sayHello()   
//NotOKToInvokeException  
public boolean isOKToInvokeSayHello(){
}