【发布时间】:2011-07-28 19:54:16
【问题描述】:
我很少在 java 中看到这样的静态导入:
import static java.lang.Math.*;
然后您可以访问PI,而无需调用Math.PI。
既然你不经常看到这个,这是否意味着这样做是一个糟糕的设计?
【问题讨论】:
标签: java import static-import
我很少在 java 中看到这样的静态导入:
import static java.lang.Math.*;
然后您可以访问PI,而无需调用Math.PI。
既然你不经常看到这个,这是否意味着这样做是一个糟糕的设计?
【问题讨论】:
标签: java import static-import
我不想使用它们,只是因为我想查看每个常量的定义位置。如果你的类和常量命名得当,对可读性有很大帮助。
再一次,如果您使用来自同一个类的大量常量并且它们的来源很明显,那么最好使用通配符导入。
【讨论】:
这个设计不错,但我认为Math.PI 比PI 更易于维护。
【讨论】:
有时是的。当您使用静态导入时,您静态导入的类中的字段和方法可能“看起来像”它们来自您的类。
这确实会影响可理解性,恕我直言。
也就是说,我一直在 JUnit 测试中使用它!
【讨论】:
还不错。只是通常没有必要。每当我的程序对java.lang.Math 进行大量调用时,我都会使用它。
大多数人也不知道它,因为它很少使用。静态构造函数等其他构造也是如此。
【讨论】:
数学早于import static,这就是大多数开发人员倾向于使用旧形式的原因。
【讨论】: