public class QName
extends Object implements Serializable
| java.lang.Object | |
| javax.xml.namespace.QName | |
QName表示如在XML规范中定义一个 限定名 : XML Schema Part2: Datatypes specification , Namespaces in XML , Namespaces in XML Errata 。
QName的值包含 名称空间URI , 本地部分和 前缀 。
前缀包括在QName保留词汇信息存在于一个时 XML input source 。 前缀是不是在使用QName.equals(Object)或计算QName.hashCode() 。 平等和散列码仅使用名称空间URI和本地部分来定义。
如果未指定,则名称空间URI将设置为XMLConstants.NULL_NS_URI 。 如果未指定,则前缀设置为XMLConstants.DEFAULT_NS_PREFIX 。
QName是不可变的。
Public constructors |
|
|---|---|
QName(String namespaceURI, String localPart)
|
|
QName(String namespaceURI, String localPart, String prefix)
|
|
QName(String localPart)
|
|
公共方法(Public methods) |
|
|---|---|
final boolean |
equals(Object objectToTest) 测试此 |
String |
getLocalPart() 获取此 |
String |
getNamespaceURI() 获取此 |
String |
getPrefix() 获取此 |
final int |
hashCode() 为此 |
String |
toString()
|
static QName |
valueOf(String qNameAsString)
|
继承方法(Inherited methods) |
|
|---|---|
java.lang.Object
|
|
QName (String namespaceURI, String localPart)
QName构造函数指定名称空间URI和本地部分。
如果名称空间URI是null ,则它设置为XMLConstants.NULL_NS_URI 。 该值不表示由Namespaces in XML规范定义的明确定义的名称空间。 此操作保留与QName 1.0兼容的行为。 显式提供XMLConstants.NULL_NS_URI值是首选的编码风格。
如果本地部分是null ,则抛出IllegalArgumentException 。 允许本地部分“”与QName 1.0保持兼容的行为。
使用此构造函数时,前缀设置为 XMLConstants.DEFAULT_NS_PREFIX 。
名称空间URI未验证为URI reference 。 本地部分未被验证为NCName,如Namespaces in XML所述 。
| 参数(Parameters) | |
|---|---|
namespaceURI |
String: Namespace URI of the QName |
localPart |
String: local part of the QName |
QName (String namespaceURI, String localPart, String prefix)
QName构造函数指定名称空间URI,本地部分和前缀。
如果名称空间URI是null ,则它设置为XMLConstants.NULL_NS_URI 。 该值不表示由Namespaces in XML规范定义的明确定义的名称空间。 此操作保留与QName 1.0兼容的行为。 显式提供XMLConstants.NULL_NS_URI值是首选的编码风格。
如果本地部分是null ,则抛出IllegalArgumentException 。 允许本地部分“”与QName 1.0保持兼容的行为。
如果前缀是null ,则引发IllegalArgumentException 。 使用XMLConstants.DEFAULT_NS_PREFIX明确指出没有前缀存在或前缀不相关。
名称空间URI未验证为URI reference 。 根据Namespaces in XML的规定,本地部分和前缀未被验证为NCName 。
| 参数(Parameters) | |
|---|---|
namespaceURI |
String: Namespace URI of the QName |
localPart |
String: local part of the QName |
prefix |
String: prefix of the QName |
QName (String localPart)
QName指定本地部分的构造函数。
如果本地部分是null ,则抛出IllegalArgumentException 。 允许本地部分“”与QName 1.0保持兼容的行为。
使用此构造函数时,名称空间URI设置为 XMLConstants.NULL_NS_URI ,前缀设置为 XMLConstants.DEFAULT_NS_PREFIX 。
在XML上下文中,所有元素和属性名称都存在于名称空间的上下文中。 在构建QName期间进行明确的QName有助于防止难以诊断XML有效性错误。 构造函数QName(String namespaceURI, String localPart)和QName(String, String, String)是优选的。
本地部分未被验证为 NCName,如 Namespaces in XML中所述 。
| 参数(Parameters) | |
|---|---|
localPart |
String: local part of the QName |
boolean equals (Object objectToTest)
测试此 QName与另一个 Object是否相等。
如果 Object待测试不是 QName或是 null ,则此方法返回 false 。
当且仅当名称空间URI和本地部分相等时,两个QName视为相等。 此方法使用String.equals()来检查名称空间URI和本地部分的相等性。 前缀不用于确定相等性。
该方法符合 Object.equals(Object)的一般合同
| 参数(Parameters) | |
|---|---|
objectToTest |
Object: the Object to test for equality with this QName |
| 返回(Returns) | |
|---|---|
boolean |
true if the given Object is equal to this QName else false |
String getLocalPart ()
获取此 QName的本地部分。
| 返回(Returns) | |
|---|---|
String |
local part of this QName |
String getNamespaceURI ()
获取此 QName的名称空间URI。
| 返回(Returns) | |
|---|---|
String |
Namespace URI of this QName |
String getPrefix ()
获取这个 QName的前缀。
分配给一个前缀QName可能无法在不同的上下文中有效。 例如, QName可能在解析文档的上下文中被分配了前缀,但是该前缀在不同文档的上下文中可能是无效的。
| 返回(Returns) | |
|---|---|
String |
prefix of this QName |
int hashCode ()
为此 QName生成哈希码。
使用名称空间URI和QName的本地部分计算哈希代码。 前缀不用于计算哈希码。
该方法符合 Object.hashCode()的一般合同。
| 返回(Returns) | |
|---|---|
int |
hash code for this QName Object |
String toString ()
String表示 QName 。
詹姆斯克拉克将String表示为QName的普遍接受的方式是defined 。 虽然这不是标准规范,但它是常用的,例如setParameter(String, Object) 。 该实现代表QName为:“{”+名称空间URI +“}”+本地部分。 如果名称空间URI为.equals(XMLConstants.NULL_NS_URI) ,则只返回本地部分。 该方法的适当使用是用于调试或记录人类消费。
请注意,前缀值 不作为 String表示的一部分返回。
该方法符合 Object.toString()的一般合同。
| 返回(Returns) | |
|---|---|
String |
String representation of this QName |
QName valueOf (String qNameAsString)
QName通过解析格式化的 String 。
如果 String是 null或不符合 QName.toString()格式, IllegalArgumentException引发 IllegalArgumentException 。
String 必须采用QName.toString()返回的形式。
詹姆斯克拉克将String表示为QName的普遍接受的方式是defined 。 虽然这不是标准规范,但它是常用的,例如setParameter(String, Object) 。 此实现解析String格式为:“{”+名称空间URI +“}”+本地部分。 如果名称空间URI为.equals(XMLConstants.NULL_NS_URI) ,则只应提供本地部分。
前缀值 不能在 String表示,并将设置为 XMLConstants.DEFAULT_NS_PREFIX 。
此方法不会对结果 QName进行完整验证。
名称空间URI未验证为URI reference 。 本地部分未被验证为NCName,如Namespaces in XML所述 。
| 参数(Parameters) | |
|---|---|
qNameAsString |
String: String representation of the QName |
| 返回(Returns) | |
|---|---|
QName |
QName corresponding to the given String |
也可以看看: