使用Java中的接口。例如。 DOM文档界面

时间:2015-01-29 11:59:41

标签: java xml dom interface extends

首先,我的问题是相对于那个:Calling method on Document interface in Java

但我想问更多。

例如,据我所知,"某人"编写了一个实现Document接口的类,并使用DocumentBuilder.parse方法返回一些内容。那么,问题1:返回什么?对类/对象的引用?对类' /对象接口的引用?这是怎么做到的?因为返回的类型是" Document"界面,如何调用它的方法?

另外,(问题2)因为DocumentBuilder返回一个接口,如何扩展从DocumentBuilder.parse方法返回对象的类,以实现Document接口的扩展?

1 个答案:

答案 0 :(得分:0)

您可以检查解析方法返回的类型(类):

DocumentBuilderFactory f = DocumentBuilderFactory.newInstance();
DocumentBuilder db = f.newDocumentBuilder();
Document doc = db.parse(...);
System.out.println(doc.getClass().getName());

如果你只使用JDK,你很可能会看到:

com.sun.org.apache.xerces.internal.dom.DeferredDocumentImpl

此类实现Document接口,因此您可以在该实例上调用该接口的所有方法。

至于第二个问题,您必须创建自己的DocumentBuilderFactory以及所有其他所需接口和类的实现。您可能能够重用和扩展现有的实现类组,但这实际上取决于这些类的设计。