在下面的代码中,ABC.getSomeNumber();
和getSomeNumber();
有什么区别吗?我知道在同一个类中有一个类名来调用静态方法似乎是多余的,但是如果我们明确地使用类名,是否会有任何性能问题或其他问题?这些在编译时如何解决 ABC.getSomeNumber();
vs getSomeNumber();
?
public class ABC {
public static int getSomeNumber(){
return 10;
}
public static void anotherMethod(){
ABC.getSomeNumber();
getSomeNumber();
}
}
最佳答案
在这种情况下没有区别。
如果从不同的类调用(直接或通过静态导入),您将需要该名称。
您可以在同一个类中使用任何一种形式。这真的取决于偏好。如果您从许多类中调用类似名称的方法,您可以选择显式使用类名,因为这将帮助您消除歧义,从而更容易阅读。
对性能没有影响,因为它们一旦编译就变得相同。
关于java - 这两个静态方法调用之间有什么区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51298491/