可能重複:
What is a good use case for static import of methods?正確使用靜態進口
我很少看不到的Java這樣的靜態導入:
import static java.lang.Math.*;
然後您可以訪問PI
而無需致電Math.PI
。
既然你沒有經常看到這個,那麼這是否意味着這是一個糟糕的設計呢?
可能重複:
What is a good use case for static import of methods?正確使用靜態進口
我很少看不到的Java這樣的靜態導入:
import static java.lang.Math.*;
然後您可以訪問PI
而無需致電Math.PI
。
既然你沒有經常看到這個,那麼這是否意味着這是一個糟糕的設計呢?
這不壞。通常沒有必要。我個人使用它,只要我的程序使用大量的電話java.lang.Math
。
大多數人也不知道它,因爲它很少使用。同樣的事情發生在靜態構造函數之類的其他構造上。
我不想使用它們,只是因爲我想看看每個常量的定義。如果你的類和你的常量被正確命名,它有助於很多可讀性。
然後,如果你使用了很多來自同一類的常量,並且它們明顯來自哪裏,那麼最好使用通配符導入。
這是不錯的設計,但在我看來Math.PI
更清晰的維修,而不僅僅是PI
。
數學大約在import static
之前,這就是爲什麼大多數開發人員傾向於使用舊的形式。
有時是的。當您使用靜態導入時,靜態導入的類中的字段和方法可能「看起來像」,它們來自您的類。
這會影響可理解性,恕我直言。
這就是說,我一直在JUnit測試中使用它!