實用類/方法

實用程序類是具有靜態變量和靜態方法的幫助程序類,可執行特定的相關任務列表。

讓我們看一下標準實用程序類的示例:

java.lang.數學 這個類可以執行許多不同的數學計算,為我們提供了一些數學常數。
java.util.數組 該類包含用於處理數組的各種方法(例如對它們進行排序和搜索)。此類還有一個靜態工廠,讓我們可以將數組視為列表。
java.lang.System 此類實現與系統一起工作的方法。大多數情況下,我們用它來在控制台上顯示文本。為此,我們引用靜態出去變量,它存儲一個PrintStream對象,並調用它的println方法 ( System.out.println )。

我們也可以自己創建一個實用程序類:為此,我們只需創建一個包含我們需要的靜態公共方法的類。但是請記住,您應該有充分的理由來創建實用程序類。例如,您可能需要在幾個不同的類中使用相同的方法或方法集來執行單個任務(例如復雜的計算)。

讓我們看一個實用程序類的示例 — Paths類。

路徑類

此類僅包含一個靜態get方法,該方法具有兩個具有不同參數列表的變體。

我們可以傳遞給get方法的參數是:

得到(首先是字符串,字符串...更多) 最後一個參數中的完整路徑或目錄名稱列表和(或)文件。
得到(URI URI) 一個 URI。

該實用程序類解決了將路徑(以字符串形式)或 URI 轉換為Path的問題。我們已經探索了Path並理解了我們為什麼需要它以及我們如何使用它。

碰巧的是,我們經常以字符串或 URI的形式處理路徑。這是我們可以使用Paths實用程序類的方法的地方。

讓我們看例子:

例子 評論

Path path =
Paths.get("C:\\Users\\User\\Documents\\MyFile.txt");
                    
我們向get方法傳遞一個 String (文件的路徑)並獲取一個Path。然後我們可以根據需要使用它。

Path path = Paths.get(URI.create("file:///Users/User/Code/MyClass.java"));
                    
Path也可以從 URI 獲得

Path path = Paths.get(System.getProperty("user.home"),"documents", "document.txt");
                    
我們指出目錄名稱的順序和需要其路徑的文件的名稱。

但這裡有一個警告。隨著 Java 11 的到來,get方法的任何實現都會調用Path.of。


public static Path get(String first, String... more) {
    return Path.of(first, more);
}
 
public static Path get(URI uri) {
    return Path.of(uri);
}
    

這個實用程序類可能被聲明為已棄用,因此我們應該改用Path.of。


Path path =
Paths.get("C:\\Users\\User\\Documents\\MyFile.txt");
                    

Path path =
Path.of("C:\\Users\\User\\Documents\\MyFile.txt");
                    

Path path = Paths.get(URI.create("file:///Users/User/Code/MyClass.java"));
                    

Path path = Path.of(URI.create("file:///Users/User/Code/MyClass.java"));
                    

Path path = Paths.get(System.getProperty("user.home"),"documents", "document.txt");
                    

ath path = Path.of(System.getProperty("user.home"),"documents", "document.txt");