私は、実行時例外をキャッチすることは、非常に悪い設計の99%であることを知っています。コントロールNullPointerException with XML
しかし、JavaでマッピングされたXMLがあり、最後のノードが存在するかどうかをテストするとします。例:
XML:それは、私たちは20個のノードを持っていた場合を想像...ただ、有効なNULL値を許可するかどうかに多くの行を取る<A> <B> <C> <D>someValue</D> </C> </B> </A>
if(myObject.getA() != null && myObject.getA().getB() != null &&
myObject.myObject.getA().getB().getC() &&
myObject.myObject.getA().getB().getC().getD() != null){
doSomeAction(myObject.myObject.getA().getB().getC().getD());
}
...
XMLゲッターは、単純な(非常に軽量であることを考えます値が返される)ので、それは我々が代わりに行うことができないパフォーマンス上の理由のために実際にある、nullになる可能性のある民間代表団を持っていない:あなたの意見は何
try{
doSomeAction(myObject.myObject.getA().getB().getC().getD());
}
catch(NullPointerException e){
throw new NullPointerException("D node doesn't exist , please check your XML", e);
}
?