为什么元素创建需要DOM中的文档对象?

时间:2010-04-04 11:01:09

标签: java xml dom

正如others所指出的那样,在Java中,使用默认的W3C DOM库,需要使用Document对象将工厂用于元素,即:

 import org.w3c.dom.Document;
 import org.w3c.dom.Element;

 Document d;
 Element e;

 e = d.createElement("tag");

为什么这有必要?为什么在概念上一个方法不能在不知道所有目标文档的情况下创建XML元素?为什么我不能只使用'new'来实例化这种效果?

1 个答案:

答案 0 :(得分:4)

因为DOM API是基于接口的。 DocumentElement都是接口,由API的各种实现实现。因此,您不能仅仅实例化Element,因为您不知道要使用哪个实现。因此,必须使用工厂方法完成所有节点创建。这是DOM API设计者的设计选择。

如果您想要更容易使用的DOM API,请尝试XOMJDOMDOM4J