Java里的static import使用小結(jié)
換了工作要把Java重新?lián)炱饋?lái)了,這個(gè)在大學(xué)里用過(guò)的語(yǔ)言,雖然不復(fù)雜,還是有一些奇怪的地方的。比如static import。
Static import是JDK 1.5中引進(jìn)的特性,不過(guò)讀大學(xué)那會(huì)還真沒注意到。它的作用是把靜態(tài)(static)的方法或者常量import進(jìn)來(lái)。比如:
import static java.lang.Math.*;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
System.out.println("Considering a circle with a diameter of 5 cm, it has:");
System.out.println("A circumference of " + (Math.PI * 5) + " cm");
System.out.println("And an area of " + (Math.PI * Math.pow(2.5,2)) + " sq. cm");
}
}
使用了static import之后,就可以寫成:
import static java.lang.Math.*;
import static java.lang.System.out;
public class HelloWorld {
public static void main(String[] args) {
out.println("Hello World!");
out.println("Considering a circle with a diameter of 5 cm, it has:");
out.println("A circumference of " + (PI * 5) + " cm");
out.println("And an area of " + (PI * pow(2.5,2)) + " sq. cm");
}
}
注意”Math.”和”System.”可以省略掉了。
Static import和import的規(guī)則類似,引用的內(nèi)容不可以有歧義。
使用了static import,代碼會(huì)變短,增加了可讀性,但一定程度上會(huì)對(duì)代碼整體的理解造成困難,因?yàn)槌A亢挽o態(tài)方法看上去像全局變得和全局方法了,有點(diǎn)C++的味道,失去了一些OO的美感。
相關(guān)文章
Java實(shí)現(xiàn)的文本字符串操作工具類實(shí)例【數(shù)據(jù)替換,加密解密操作】
這篇文章主要介紹了Java實(shí)現(xiàn)的文本字符串操作工具類,可實(shí)現(xiàn)數(shù)據(jù)替換、加密解密等操作,涉及java字符串遍歷、編碼轉(zhuǎn)換、替換等相關(guān)操作技巧,需要的朋友可以參考下2017-10-10
spring結(jié)合redis如何實(shí)現(xiàn)數(shù)據(jù)的緩存
這篇文章主要介紹了spring結(jié)合redis如何實(shí)現(xiàn)數(shù)據(jù)的緩存,實(shí)現(xiàn)的目的目的不是加快查詢的速度,而是減少數(shù)據(jù)庫(kù)的負(fù)擔(dān),需要的朋友可以參考下2015-12-12
visual studio 2019安裝配置可編寫c/c++語(yǔ)言的IDE環(huán)境
這篇文章主要介紹了visual studio 2019安裝配置可編寫c/c++語(yǔ)言的IDE環(huán)境,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
使用自定義注解和@Aspect實(shí)現(xiàn)責(zé)任鏈模式的組件增強(qiáng)的詳細(xì)代碼
責(zé)任鏈模式是一種行為設(shè)計(jì)模式,其作用是將請(qǐng)求的發(fā)送者和接收者解耦,從而可以靈活地組織和處理請(qǐng)求,本文講給大家介紹如何使用自定義注解和@Aspect實(shí)現(xiàn)責(zé)任鏈模式的組件增強(qiáng),文中有詳細(xì)的代碼示例供大家參考,感興趣的同學(xué)可以借鑒一下2023-05-05
SpringBoot3.x中spring.factories?SPI?服務(wù)發(fā)現(xiàn)機(jī)制的改變問題小結(jié)
spring.factories其實(shí)是SpringBoot提供的SPI機(jī)制,底層實(shí)現(xiàn)是基于SpringFactoriesLoader檢索ClassLoader中所有jar引入的META-INF/spring.factories文件,這篇文章主要介紹了SpringBoot3.x中spring.factories?SPI?服務(wù)發(fā)現(xiàn)機(jī)制的改變,需要的朋友可以參考下2023-05-05
Spring Cloud OpenFeign REST服務(wù)客戶端原理及用法解析
這篇文章主要介紹了Spring Cloud OpenFeign REST服務(wù)客戶端原理及用法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
MyBatis-Plus中的邏輯刪除功能及實(shí)例分析
本文將詳細(xì)講解MyBatis-Plus中的邏輯刪除特性,并結(jié)合實(shí)際案例進(jìn)行演示和說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03

