ランタイムを含むアプリケーションによってスローされたすべての例外を処理する例外処理のコードを以下に見つけました。
public static void handleException(String strMethodName,
Exception ex) throws CustomException{
String strMessage = "";
try {
throw ex;
}
catch (NullPointerException npe){
logger.log(pr, strMethodName, npe.getMessage());
strMessage=ERR_02;
throw new CustomException(strMessage);
}
catch(IndexOutOfBoundsException iobe) {
logger.logMethodException(strMethodName,iobe.getMessage());
strMessage=ERR_03;
throw new CustomException(strMessage);
}
... So On
}
私が思うデメリットは以下の通りです。
- 例外の根本原因を特定するには、メッセージ文字列を常にチェックする必要があります。
- 例外の種類の分離なし
アドバンテージ:
- コードが少ない。(コードは最小化できます)
そのような仕組みを採用すべきかどうか教えてください。