两个具有相同的名称在CLASSPATH中的类
生活随笔
收集整理的這篇文章主要介紹了
两个具有相同的名称在CLASSPATH中的类
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
http://d2100.com/questions/817
兩個具有相同的名稱在CLASSPATH中的類
如果我有兩個名稱相同的類說在我的類路徑的兩個不同的JAR將拾起JVM Matcher.java,反正是有,我可以建議JVM選擇一個特定的呢?
4條回答
回答#1
引述甲骨文 :
規范秩序
您指定多個類路徑項的順序是很重要的。 Java解釋器將查找的目錄中的類,它們在類路徑變量中出現的順序。在上面的例子中,Java解釋器將首先查找所需目錄中的C類: JAVA MyClasses。只有當它沒有找到一個適當的名稱,在該目錄的類口譯看看在C: JAVA OtherClasses目錄。
這個例子中提到:
C:> Java的類路徑C: JAVA MyClasses C: JAVA OtherClasses ...
所以,是的,它會加載一個,先指定的類路徑中出現。
回答#2
還有一種方法,為您指定的類應該選擇從..您可以創建自己的類加載器加載類,根據您的要求。
你可以使用你的類加載2種方式
這里的類加載一些有用的鏈接
- Oracle - How to write your own class loader
- A very nice post on writing custom class loader
回答#3
在classpath中找到的第一個。即,第一個JAR包含您的類將被使用。
你無法控制它從JVM內,但可以控制的classpath -確保你想要的是一個上市/在classpath中首先發現。
回答#4
使用它時使用的類的完全限定路徑。但是,如果你是指具有相同的名稱類,也具有相同的封裝 - 修復類路徑。
?
總結
以上是生活随笔為你收集整理的两个具有相同的名称在CLASSPATH中的类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 八大攻略破解高级口译阅读
- 下一篇: 学习使用 Manifest