java静态导入

时间:2012-02-06 13:05:35

标签: java

有时我们可以从ClassA做:

import com.software.ClassB;
    classbObject = new ClassB ;
    ClassB.getMethodX();

我们也可以直接从ClassA制作

import com.software.ClassB;
classbObject = new ClassB ;
classbObject.getMethodX(); 

这两种情况之间的差异是什么(直接调用类或对象)?有推荐吗? 感谢,

3 个答案:

答案 0 :(得分:2)

如果你的意思与我的意思相同:不,ClassB.getMethodX()classbObject.getMethodX()之间没有功能差异,因为getMethodX是静态的。由于来自非静态上下文的静态方法调用,只有您的编译器可能会向您发出警告{1}}。

答案 1 :(得分:1)

你的意思是为什么:

ClassB.getMethodX()

与此不同?

classbObject.getMethodX()

如果是这样,那么第二个就是错误的。我的意思是它仍然有效,但没有任何意义。该方法声明为static,它“属于”类。对于类,您有一个静态方法,而不管有多少个实例。因此,应该以静态方式调用每个静态方法:     ClassB.getMethodX()

答案 2 :(得分:0)

没有导入的唯一方法是ClassB classbObject是否在同一个包中。如果你问,如果你使用导入答案是,如果需要导入则使用导入,因为该类不在同一个包中。

我在你的问题中没有看到静态导入,所以不确定这与你的问题有什么关系。