首頁 > Java > java教程 > 主體

Java靜態導入

WBOY
發布: 2024-08-30 15:57:38
原創
568 人瀏覽過

Java 靜態導入是一種有助於直接使用任何類別的靜態成員的機制。類別中的靜態項目可以在模組中輕鬆引用,無需其他限定。不需要任何類別名稱或對象,可以直接使用這些靜態對象。這是增加程式碼可讀性和提高程式碼品質的好方法。除非必要,否則不建議使用靜態導入。

開始您的免費軟體開發課程

網頁開發、程式語言、軟體測試及其他

Java 中靜態導入的工作原理

靜態導入幫助我們直接使用類別的靜態成員。它使所有類別成員都可訪問,這反過來又有助於使用該類別的成員,而無需重複提及類別名稱。下面的程式碼是靜態導入的範例。您不需要使用 System 類別的模組 System.out。相反,您可以直接在程式碼中引用 out.println ,並且該程式將成功運行,因為我們已經靜態匯入了 System 類別。

import static java.lang.System.*;
public class StaticImportInstance{
public static void main(String args[]){
out.println("Hi");//Now no need of System.out
out.println("We are using Static Import");
}
}
登入後複製

Java 靜態導入範例

讓我們來看一些使用靜態導入功能的範例。

範例#1

靜態匯入內建的 Java Math 類別。

代碼:

import static java.lang.Math.PI;
import static java.lang.Math.pow;
public class HelloStaticWorld {
public static void main(String[] args) {
System.out.println("Hello, Let us get introduced to the Static Import World!");
System.out.println("Let us consider  a circle with a diameter of 5 cm, it has");
System.out.println("a circumference of " + (Math.PI * 5) + " cm");
System.out.println("and the area of circle will be" + (Math.PI * Math.pow(2.5, 2)) + " sq. cm");
}
}
登入後複製

輸出:

Java靜態導入

上面的程式正在導入 Math 類別。更進一步,它還靜態導入 PI 和 POW 方法。一旦靜態使用這些,我們就不需要在程式中建立任何進一步的引用或物件。我們可以輕鬆使用導入的類別。我們利用 Math.PI 來使用 PI 的值並找到圓的周長。另外,我們再次使用 PI 和 POW 方法來求圓的面積,這有助於我們求圓的面積。如果您檢查螢幕截圖,您會看到顯示圓的周長和麵積。

範例#2

匯入內建的 Java Integer 類別

代碼:

import static java.lang.Integer.MAX_VALUE;
import static java.lang.Integer.MIN_VALUE;
public class StaticImportInteger {
public static void main(String args[]) {
//Finding Max and Min without static import
System.out.println("We will find maximum value of an integer variable in Java without using" + "static import : " + Integer.MAX_VALUE);
System.out.println("We will find minimum value of an integer variable in Java without using" +
"static import : " + Integer.MIN_VALUE);
//Finding Max and Min without static import
System.out.println("We will find maximum value of an integer variable in Java with  using" +
"static import : " + MAX_VALUE);
System.out.println("We will find minimum value of an integer variable in Java with  using" +
"static import : " + MIN_VALUE);
}
}
登入後複製

輸出:

Java靜態導入

上面的範例是靜態導入 Integer 類別。這意味著我們可以直接使用該類別中的方法並在程式中使用它們,而無需進一步引用。我們首先找到整數的最大數和整數的最小數,其中我們不使用靜態導入並使用普通函數。這裡我們將使用類別名,然後使用函數名。如果您看到範例,我們使用了 Integer.Min_Value 和 Integer.Max_Value。在下面的程式碼中,我們使用靜態導入。在這裡,如果你檢查一下,你會發現我們直接使用了 MAX_VALUE 和 MIN_VALUE 方法。兩者的結果將是相同的。這告訴我們有兩種方法可以使用不同的 Java 函數。

範例 #3

使用靜態導入時存在歧義

代碼:

import static java.lang.Integer.*;
import static java.lang.Long.*;
public class HelloAmbiguity{
public static void main(String[] args) {
System.out.println(MAX_VALUE);
}
}
登入後複製

輸出:

Java靜態導入

匯入同一個類別的靜態成員時可能會出現上述情況。發生這種情況時,編譯器會困惑於選擇哪個成員。因此,當涉及到同一類的成員時,它會面臨歧義。上面的範例中 lang 類別被導入兩次。它使用的不同成員是 Integer 和 Long。當呼叫 main 函數時,編譯器會混淆在 Integer 和 Long 之間選擇哪個成員。如果沒有特定的類別名,它將無法計算出應該使用哪個成員。因此它會拋出一個錯誤,如上面的螢幕截圖所示。

優點

使用靜態方法有很多優點。僅舉幾例,您可以看到以下內容:

  • 您可以一起存取許多不依賴其任何實例的類別並單獨使用它們。
  • 透過匯入應該執行相關工作的方法,我們可以對這些無狀態實用程式進行分組,進而使它們保持一致,這樣它也可以直接使用參數和傳回類型。
  • 使用靜態導入方式導入的方法效能較好。它們不需要任何顯式的空檢查。他們更快。
  • 當我們使用靜態方法時,我們使程式碼更具可讀性。這是因為包含的類別名稱數量較少。
  • 它有助於使可重複使用性變得更容易。您可以重複使用程式碼,並且只需要靜態導入類別即可。

結論

靜態導入方法是使用任何類別的成員而無需為該類別建立任何引用的簡單方法。當我們導入類別的時候,就可以直接使用這些方法。靜態導入使用戶能夠獲得需要更少擊鍵次數並且效率更高的程式碼。我們可以使用靜態導入,但建議僅在有要求時才使用它。

以上是Java靜態導入的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板