Java 9 中的匿名模組是什麼?
匿名模組** 是**匿名包** 的概念。它是一個模組,其中包或類不能在任何**已命名模組** 中定義,但存在類路徑的**jar 檔案** 中。如果我們的程式碼嘗試從那些檔案中載入型別,模組系統會嘗試查詢**類路徑** 並載入它。
**匿名模組** 讀取所有其他模組,包括所有**已命名**、**內建平臺模組**,並且還匯出其所有**包**。匿名模組中的包可以被忽略,它在已命名模組中也有定義。
匿名模組可以訪問
- **模組路徑** 中所有其他模組匯出的所有包。
- 類路徑中的所有 jar(即此匿名模組中存在的所有其他型別)。
語法
java --module-path out -module moduleName/com.tutorialspoint.UnnamedModuleTest
示例
public class UnnamedModuleTest { public static void main(String args[]) { Module module = UnnamedModuleTest.class.getModule(); System.out.println("Module: "+ module); System.out.println("Name: " + module.getName()); System.out.println("isNamed: " + module.isNamed()); System.out.println("Descriptor: " + module.getDescriptor()); } }
輸出
Module: unnamed module @c818063 Name: null isNamed: false Descriptor: null
廣告