可能重复:
静态导入方法的好用例是什么?
我很少在 java 中看到这样的静态导入:
import static java.lang.Math.*;
然后您PI
无需调用即可访问Math.PI
。
既然你不经常看到这个,这是否意味着这样做是一个糟糕的设计?
可能重复:
静态导入方法的好用例是什么?
我很少在 java 中看到这样的静态导入:
import static java.lang.Math.*;
然后您PI
无需调用即可访问Math.PI
。
既然你不经常看到这个,这是否意味着这样做是一个糟糕的设计?
我不想使用它们,只是因为我想查看每个常量的定义位置。如果你的类和常量命名得当,它对可读性有很大帮助。
再说一次,如果你使用了很多来自同一个类的常量并且很明显它们来自哪里,你最好使用通配符导入。
这不是糟糕的设计,但在我看来Math.PI
,维护比仅仅更清晰PI
。
有时候是的。当您使用静态导入时,您静态导入的类中的字段和方法可能“看起来像”它们来自您的类。
恕我直言,这确实会影响可理解性。
也就是说,我一直在 JUnit 测试中使用它!
数学在之前就已经存在,import static
这就是大多数开发人员倾向于使用旧形式的原因。
不算太差。只是通常没有必要。每当我的程序使用大量对java.lang.Math
.
大多数人也不知道它,因为它很少使用。同样的事情也适用于静态构造函数等其他构造。