1

SAXExceptionは、 SAXNotRecognizedException、 SAXNotSupportedExceptionによって拡張されて います

try {
  //do Something
} catch(SAXException e) {}
  catch(ParserConfigurationException pce) {}

「何かをする」にはスローするコードがSAXNotRecognizedException or SAXNotSupportedExceptionあり、それが発生した場合は何も起こらないはずです。SAXNotRecognizedException が発生した場合、空のブロックであるため何も起こりません。ParserConfigurationException についても同様です。今、ParserConfigurationException に対して何もしないと言っても、ParserConfigurationException の例外もスローされます。

私は基本的にそれが発生したときに何もしないことを望んでいSAXNotRecognizedException or SAXNotSupportedExceptionます。

4

2 に答える 2

7

はい、親例外は子例外もキャッチします。既知の例は、 Exceptionをキャッチする場合です。この try ブロックは、NullPointer などのすべてのソート (子) 例外をキャッチします。

于 2015-09-01T15:35:42.940 に答える
1

SAXNotRecognizedExceptionまたはのみをキャッチSAXNotSupportedExceptionしたい場合は、Java 7以降のより良い方法は次のとおりです。

try {
  // Do something
} catch(SAXNotRecognizedException | SAXNotSupportedException e) {
  // Do nothing
}

他の SAXExceptions はキャッチされないことに注意してください。

于 2015-09-01T15:47:22.627 に答える