亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

“導入”之后的“靜態”修飾語是什么意思?

“導入”之后的“靜態”修飾語是什么意思?

料青山看我應如是 2019-07-26 17:14:04
“導入”之后的“靜態”修飾語是什么意思?像這樣使用時:import static com.showboy.Myclass;public class Anotherclass{}有什么區別import static com.showboy.Myclass和import com.showboy.Myclass?
查看完整描述

3 回答

?
慕虎7371278

TA貢獻1802條經驗 獲得超4個贊

看見文獻資料

靜態導入聲明類似于正常的導入聲明。如果正常導入聲明從包導入類,允許在沒有包限定的情況下使用這些類,則靜態導入聲明從類中導入靜態成員,允許在沒有類限定的情況下使用它們。

那么什么時候應該使用靜態導入呢?非常謹慎!只有當您不想聲明常量的本地副本或濫用繼承(常量接口反模式)時才使用它。換句話說,當您需要經常訪問一個或兩個類的靜態成員時,請使用它。如果您過度使用靜態導入功能,它可能會使您的程序不可讀和不可維護,從而使用您導入的所有靜態成員污染它的命名空間。您的代碼的讀者(包括您,在您編寫代碼幾個月后)將不知道靜態成員來自哪個類。從類中導入所有靜態成員對可讀性特別有害;如果只需要一個或兩個成員,則單獨導入它們。如果使用得當,靜態導入可以通過刪除類名重復的樣板來提高程序的可讀性。



查看完整回答
反對 回復 2019-07-27
?
慕哥9229398

TA貢獻1877條經驗 獲得超6個贊


您所述的這兩種進口產品之間沒有差別。但是,您可以使用靜態導入來允許對其他類的靜態成員進行不限定的訪問。在我以前不得不這樣做的地方:

import org.apache.commons.lang.StringUtils;
      .
      .
      .if (StringUtils.isBlank(aString)) {
      .
      .
      .

我能做到:

import static org.apache.commons.lang.StringUtils.isBlank;
      .
      .
      .if (isBlank(aString)) {
      .
      .
      .

您可以在文獻資料.




查看完整回答
反對 回復 2019-07-27
  • 3 回答
  • 0 關注
  • 340 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號