2011-08-09 39 views
4

我在尋找org.w3c.dom.Node的源代碼,尤其是setTextContentorg.w3c.dom.Node的源代碼是否可用?

但是,無論我把它放到谷歌,我得到的都是JavaDoc或其他提取,但從來沒有完整的源代碼。

我不會認爲以org.開頭的軟件包是禁止的。那麼有沒有什麼地方可以看到實際的來源,還是我弄錯了,代碼確實是祕密的?

+0

*爲什麼*你對源代碼感興趣?你想知道什麼? –

+0

這是一種僅在Android API 8以上版本中提供的便捷方法。所以我想知道里面是什麼。我可能不需要「刪除所有現有的子節點」部分,但我想知道如何正確創建並附加文本節點。 – Martin

+0

在這種情況下,抓住Xerces實現並查看它的'NodeImpl'可能是正確的方法。 –

回答

7

org.w3c.dom.Node是一個界面!因此,源代碼中沒有任何內容在JavaDoc中看不到,它只是方法定義。

可能想看看有什麼具體Node實現從您的DOM實現獲得:

Node myNode = getNodeFromSomewhere(); 
System.out.println("Node interface is implemented by " + myNode.getClass()); 
+0

謝謝。應該想到這個我自己(:尷尬:) – Martin

+1

你可以有接口的來源...但你不會學習任何有用的東西,它不在javadoc中。 +1 –

+0

它是'org.apache.harmony.xml.dom.ElementImpl' - 現在我找到了它的源代碼。這是一個狂野的鵝躺椅。 – Martin

6

org.w3c.dom.Node是一個接口。這是最普遍的Apache Xerces的實現:

http://xerces.apache.org/

對於Xerces的例子

  • org.apache.xerces.dom.NodeImpl直接
  • com.sun.org.apache.xerces.internal.dom.NodeImpl在JVM(的Xerces隨你的Java 6分發源在不在。 %JAVA_HOME%/ src.zip)
+0

請注意,'src.zip'只與JDK分發,而不與JRE分發。另外:JDK中的Xerces發行版移至Sun JDK中的「com.sun」子包(以避免版本衝突)。 –

相關問題