SAXParserFactory.newSAXParser()引发ParserConfigurationExceptionSAXException。在doc中,我无法找出为什么应抛出SAXException的原因。

什么时候SAXParserFactory.newSAXParser()抛出SAXException

最佳答案

正如documentation指出的,newSAXParser方法是抽象的。但是,newInstance方法创建一个SAXParserFactoryImpl对象,该对象extends SAXParserFactory类并覆盖newSAXParser方法。

此处的newSAXParser方法仅引发ParserConfigurationException,但是如果您查看内部,则会捕获到被翻译为SAXExceptionParserConfigurationException
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl方法在init构造函数中引发此异常。

我已经搜索了完整的Java 5源代码,没有其他类可以扩展SAXParserFactory。
因此,基本上,您要求的方法永远不会抛出SAXException
但是,如果在途中被抛出,则会被捕获并转换为ParserConfigurationException

10-07 19:00