public class QName extends Object implements Serializable
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是不可变的。
| Constructor and Description |
|---|
QName(String localPart)
QName指定本地零件的构造函数。
|
QName(String namespaceURI, String localPart)
QName构造函数指定命名空间URI和本地部分。
|
QName(String namespaceURI, String localPart, String prefix)
QName构造函数指定命名空间URI,本地部分和前缀。
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object objectToTest)
测试这
QName与另一个
Object的平等。
|
String |
getLocalPart()
获取本
QName的本地部分。
|
String |
getNamespaceURI()
获取此的命名空间URI
QName 。
|
String |
getPrefix()
获取此
QName的前缀。
|
int |
hashCode()
生成这个
QName的哈希码。
|
String |
toString()
String这个
QName 。
|
static QName |
valueOf(String qNameAsString)
QName源自解析格式化的
String 。
|
public 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 。
namespaceURI -命名空间的URI
QName
localPart - 本地部分
QName
IllegalArgumentException - 当时
localPart是
null
QName(String namespaceURI, String localPart, String prefix)
public 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 。 本地部分和前缀不验证为NCName在指定的Namespaces in XML 。
namespaceURI -命名空间的URI
QName
localPart - 本地部分
QName
prefix - 前缀的
QName
IllegalArgumentException -
localPart或
prefix为
null
public QName(String localPart)
QName指定本地零件的构造函数。
如果本地的部分是null ,则抛出一个IllegalArgumentException 。 允许“”的本地部分保留与QName 1.0的兼容行为。
使用此构造函数时,命名空间URI设置为XMLConstants.NULL_NS_URI ,前缀设置为XMLConstants.DEFAULT_NS_PREFIX 。
在XML上下文中,所有元素和属性名称都存在于命名空间的上下文中。 制作施工时此明确QName有助于避免诊断XML有效性错误。 构造器QName(String namespaceURI, String localPart)和QName(String namespaceURI, String localPart, String prefix)是优选的。
本地部分不会验证为NCName在指定的Namespaces in XML 。
localPart - 本地部分
QName
IllegalArgumentException - 当
localPart是
null
QName(String namespaceURI, String localPart) ,
QName(String namespaceURI, String localPart, String prefix)
public String getNamespaceURI()
获取此的命名空间URI QName 。
QName空间URI
public String getLocalPart()
获取本QName的本地部分。
QName
public String getPrefix()
获取此QName的前缀。
分配给一个前缀QName可能无法在不同的上下文中有效。 例如, QName可以在解析文档的上下文中被分配前缀,但该前缀在不同文档的上下文中可能是无效的。
QName前缀
public final boolean equals(Object objectToTest)
测试这个QName与另一个Object的平等。
如果Object待测试不是QName或为null ,则此方法返回false 。
当且仅当命名空间URI和本地部分都相等时,两个QName被认为是相等的。 此方法使用String.equals()来检查命名空间URI和本地部分的相等性。 前缀不用于确定相等。
此方法满足的总承包Object.equals(Object)
equals在
Object
objectToTest -
Object以测试与此
QName的平等
true如果给定的
Object等于这个
QName其他
false
Object.hashCode() , HashMap
public final int hashCode()
hashCode在
Object
QName
Object
Object.equals(java.lang.Object) ,
System.identityHashCode(java.lang.Object)
public String toString()
String表示此QName 。
代表QName作为String的普遍接受的方式是James Clark的defined 。 虽然这不是标准规范,但它是常用的,例如Transformer.setParameter(String name, Object value) 。 这个实现表示一个QName为:“{”+ Namespace URI +“}”+本地部分。 如果命名空间URI为.equals(XMLConstants.NULL_NS_URI) ,则只返回本地部分。 这种方法的适当使用是用于人类消费的调试或记录。
注意前缀值不作为String表示的一部分返回。
此方法满足的总承包Object.toString() 。
public static QName valueOf(String qNameAsString)
QName衍生自解析格式化的String 。
如果String是null或不符合QName.toString()格式,则会抛出一个IllegalArgumentException 。
String 必须以QName.toString()返回的形式 。
代表QName作为String的普遍接受的方式是James Clark的defined 。 虽然这不是一个标准的规范,但它是常用的,例如Transformer.setParameter(String name, Object value) 。 此实现解析为String格式为:“{”+ Namespace URI +“}”+本地部分。 如果命名空间URI为.equals(XMLConstants.NULL_NS_URI) ,则只应提供本地部分。
前缀值不能在String中String ,并将设置为XMLConstants.DEFAULT_NS_PREFIX 。
该方法不会对所得的QName进行全面QName 。
命名空间URI未验证为URI reference 。 本地部分不会验证为NCName在指定的Namespaces in XML 。
qNameAsString -
String表示
QName
QName对应给定的
String
IllegalArgumentException - 当
qNameAsString为
null或格式错误
QName.toString()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.