W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
導入聲明用于將任何類型導入編譯單元。
導入聲明出現(xiàn)在包聲明之后,第一個類型聲明之前。
有兩種類型的導入聲明:
單類型導入聲明用于從包導入單個類型。它是形式。
import <fully qualified name of a type>;
以下導入聲明從com.w3cschool包導入Dog類:
import com.w3cschool.Dog;
單類型的導入聲明只從包中導入一個類型(一個類)。
要從包中導入多個類型,請為每個類型使用單獨的導入聲明。
以下導入聲明從pkg1包導入ClassOne,從pkg2包導入ClassTwo和ClassThree,以及從pkg3包導入ClassFour:
import pkg1.ClassOne; import pkg2.ClassTwo; import pkg2.ClassThree; import pkg3.ClassFour;
以下代碼使用Dog類的完全限定名稱。
public class Main{ public static void main(String[] args) { com.w3cschool.Dog jack; // Uses full qualified name for the Dog class } }
以下代碼顯示如何使用單類型import語句將com.w3cschool.Dog類導入到其簡單名稱。
修改后的Main類聲明如下:
import com.w3cschool.Dog; // Import the Dog class public class Main { public static void main(String[] args) { Dog jack; // Use simple name of the Dog class } }
當編譯器在語句中遇到Dog類的簡單名稱時,就像
Dog jack;
它將通過所有導入聲明將簡單名稱解析為完全限定名稱。
當它嘗試解析簡單名稱Dog時,它會找到導入聲明import com.java2s.Dog,它將導入Dog類。
它假定您打算在上面的語句中使用簡單名稱Dog時使用com.java2s.Dog類。
編譯器用以下語句替換上面的語句:
com.w3cschool.Dog jack;
導入聲明允許您在代碼中使用類型的簡單名稱,從而使您的代碼更具可讀性。
當編譯代碼時,編譯器用其完全限定名替換類型的簡單名稱。
它使用導入聲明將類型的簡單名稱轉(zhuǎn)換為其完全限定名稱。
按需導入聲明使用一個導入聲明從包導入多個類型。
按需導入聲明的語法是
import <package name>.*;
這里,包名稱后面跟著一個點和一個星號(*)。
例如,以下需要的import-on-demand聲明從com.java2s包導入所有類型:
import com.w3cschool.*;
您可以使用按需導入聲明重寫Main類的代碼。
import com.w3cschool.*; public class Main { public static void main(String[] args) { Dog jack; // Use simple name of the Dog class } }
靜態(tài)導入聲明將類型的靜態(tài)成員(變量/方法)導入到編譯單元中。
靜態(tài)導入聲明有兩種風格:單靜態(tài)導入和靜態(tài) - 按需導入。
單靜態(tài)導入聲明從類型中導入一個靜態(tài)成員。靜態(tài)導入請求聲明導入類型的所有靜態(tài)成員。
靜態(tài)導入聲明的一般語法如下:
單靜態(tài)導入語句:
import static <package name>.<type name>.<static member name>;
靜態(tài)導入需求聲明:
import static <package name>>.<type name>.*;
系統(tǒng)是java.lang包中的一個類,它有一個名為out的靜態(tài)變量。
當你使用System.out時,我們指的是System類中的靜態(tài)變量。
我們可以使用靜態(tài)導入聲明從System類導入out靜態(tài)變量,如下所示:
import static java.lang.System.out;
下面的代碼導入了System類的out靜態(tài)變量。
import static java.lang.System.out; public class StaticImportTest { public static void main(String[] args) { out.println("Hello static import!"); } }
上面的代碼生成以下結(jié)果。
java.lang包中的Math類有許多實用程序常量和靜態(tài)方法。
例如,它有一個類變量名為PI。
要使用Math類的任何靜態(tài)變量或方法,我們需要使用類名Math來限定它們。
例如,您可以將PI靜態(tài)變量稱為Math.PI,將sqrt()方法稱為Math.sqrt()。
我們可以使用以下static-import-on-demand聲明來導入Math類的所有靜態(tài)成員:
import static java.lang.Math.*;
以下代碼通過導入其靜態(tài)成員來演示使用Math類。
import static java.lang.Math.PI; import static java.lang.Math.sqrt; import static java.lang.System.out; public class Main { public static void main(String[] args) { double radius = 6.9; double area = PI * radius * radius; out.println("Value of PI is: " + PI); out.println("Radius of circle: " + radius); out.println("Area of circle: " + area); out.println("Square root of 2.0: " + sqrt(2.0)); } }
上面的代碼生成以下結(jié)果。
以下是關(guān)于靜態(tài)導入聲明的一些重要規(guī)則。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: