Java AXIOM中OMNode和OmeElement之间的区别是什么
AXIOM中OMNode和OmeElement之间的区别及其用法是什么?我已经实现了一个XML解析器,并且在实现中使用了这两个对象。OmeElement是OMNode的子类吗 作为一个例子,两者的行为方式相同:看看这个Java AXIOM中OMNode和OmeElement之间的区别是什么,java,axiom,ixmldomelement,Java,Axiom,Ixmldomelement,AXIOM中OMNode和OmeElement之间的区别及其用法是什么?我已经实现了一个XML解析器,并且在实现中使用了这两个对象。OmeElement是OMNode的子类吗 作为一个例子,两者的行为方式相同:看看这个 //OMElement OMElement omElement = nodeElement; String attributeValue = ((OMElementImpl) omElement).getText(); //OMNode OMNode omNode = node
//OMElement
OMElement omElement = nodeElement;
String attributeValue = ((OMElementImpl) omElement).getText();
//OMNode
OMNode omNode = nodeElement;
String attributeValue = ((OMElementImpl) omNode).getText();
既支持强制转换,又以同样的方式首先,您的代码引用了
OMElementImpl
。你不应该那样做。正如类的名称(以及包含该类的包的名称)所示,这是一个不应直接在应用程序代码中使用的实现类。无论如何,转换到OMElementImpl
是没有用的,因为getText
方法是由OMElement
接口定义的
要回答这个问题,是的,OMElement
扩展了OMNode
,正如您在Javadoc中看到的:
正如名称所示,OMElement
表示一个XML元素<另一方面,code>OMNode由表示XML信息项的所有Axiom类实现,该XML信息项可以是另一个信息项的子项(如注释、文本节点、处理指令等)