0

我想知道以下是否有任何区别:

import packageX.packageY.classZ;

public void dummyMethod()
{
     classZ dummyObj = new classZ();
}

public void dummyMethod()
{
     packageX.packageY.classZ dummyObj = new packageX.packageY.classZ();
}

任何性能/编译时/运行时差异?有什么吗?

4

3 回答 3

4

生成的字节码是相同的 - 因此没有运行时差异。

import使代码更具可读性。

但如果可能与其他类发生冲突,则应使用完全限定名称。

于 2013-10-30T06:50:28.527 回答
3

根本没有区别,它不会影响速度或性能或任何东西。

它显然只会影响可读性,如果您导入它,如果您想使用该命名空间中的其他类,则必须少输入。

即使您导入了 100 个甚至没有被使用的命名空间,它也不会影响您的性能。

于 2013-10-30T06:49:19.163 回答
1

性能方面或执行方面:完全没有区别 1:

import packageX.packageY.classZ;

void dummyMethod()
{
     classZ dummyObj = new classZ();
}

这是为了方便,您不必每次都输入完整路径

2:

void dummyMethod(){
     packageX.packageY.classZ dummyObj = new packageX.packageY.classZ();
}

此方法将使您每次创建实例时都键入完整路径

第二种方法仅在以下情况下才有用

==> when you have to instantiate two objects with the same Class Name from different packages
于 2013-10-30T06:54:17.023 回答