在java中正确使用静态导入

时间:2011-07-28 19:54:17

标签: java import static-import

  

可能重复:
  What is a good use case for static import of methods?

我很少在java中看到静态导入:

import static java.lang.Math.*;

然后,您无需致电PI即可访问Math.PI

由于您经常不会看到这种情况,这是否意味着这样做是一个糟糕的设计?

5 个答案:

答案 0 :(得分:3)

我不想使用它们,只是因为我想看看每个常量的定义。如果您的类和常量被恰当地命名,那么它可以帮助您实现可读性。

然后再说一遍,如果你使用同一个类中的很多常量,并且很明显它们来自哪里,你最好使用通配符导入。

答案 1 :(得分:1)

这还不错。通常没有必要。每当我的程序使用大量调用java.lang.Math时,我个人都会使用它。

大多数人也不知道它,因为它很少被使用。同样的事情也适用于静态构造函数等其他构造。

答案 2 :(得分:1)

设计并不差,但在我看来,Math.PI对于维护而言比PI更清晰。

答案 3 :(得分:1)

数学在import static之前就已存在,这就是大多数开发人员倾向于使用旧形式的原因。

答案 4 :(得分:1)

有时是的。当您使用静态导入时,静态导入的类中的字段和方法可能“看起来像”它们来自您的类。

这确实会影响可理解性,恕我直言。

那就是说,我在JUnit测试中一直使用它!