[英]Calling static method without a reference variable
为什么在“ method1();”中不需要引用变量? 为了从main调用静态方法?
public class MainClass {
public static void method1() {
System.out.println("Method1");
}
public static void main(String[ ] args) {
method1();
}
}
在不为非静态方法实例化Object变量的情况下:
MainClass var = new MainClass();
var.method1();
静态成员(方法,字段)不属于任何对象实例。 静态成员存在即使没有创建对象实例。 静态成员共享所有对象实例。 这就是为什么当您访问静态成员时,您不必使用任何对象实例。
对于您的情况:
var1.method1() = var2.method1() = var3.method1() = MainClass.method1()
因为他们正在调用相同的静态成员实例。 但是建议您以静态方式访问静态成员。
static members
是不是特定于对象的class member
,因此我们不需要对象。 最好的例子是public static void main(String [] args)
方法本身。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.