使用静态方法比导入整个类便宜吗?

时间:2012-12-26 02:53:14

标签: java import static-libraries static-methods

我在一个相对较大的(库)类mymethod中有一个小的静态方法com.package.pirulo。我可以执行以下两项操作之一:我导入com.package.pirulo然后我只使用pirulo.mymethod(...),或者我可以使用com.package.pirulo.mymethod(...)方法直接使用方法。

从资源/速度的角度来看哪个更便宜?看起来第二个选项更便宜,但由于mymethod可以调用com.package.pirulo中的其他方法,也许整个库总是以某种方式导入...

并且:第一个选择与实例化pirulo对象一样昂贵(相同的POV)?

5 个答案:

答案 0 :(得分:3)

导入在运行时完全没有区别,在编译时只有可忽略的(最多)差异。

答案 1 :(得分:2)

调用静态导入与使用完全限定名称的性能没有区别。

答案 2 :(得分:2)

两种不同的导入方法之间差别不大。

可能很少有你真的担心对象创建的情况。

在极端微观管理的角度来看,最好不要制作一个对象,但通常不会明显。

答案 3 :(得分:1)

从包中导入您需要使用的类。

导入单个方法的唯一时间是静态导入,不,不会节省您的时间,如果可以,则可以忽略不计,您不应该这样做因为这个原因。

尽管如此,有时静态导入会提高可读性。例如,java.lang.String.format。

答案 4 :(得分:0)

import语句只使代码可读且易于编写。编译代码后,所有引用都将替换为完全限定名称,并忽略未使用的导入。 String s;"会自动java.lang.String s;,因此无关紧要。