以下代码如何工作?

Sai*_*een 2 java methods static invocation

目前我正试图像这样调用它:

class Test {
    public static void test() {
        System.out.println("hi");
    }
    public static void main(String[] args) {
        Test t = null;
        t.test();
    }
}
Run Code Online (Sandbox Code Playgroud)

代码的输出是hi

Kur*_*urt 11

Test.test()在点之前尝试使用类名.

静态方法在类本身上调用,而不是类的实例.


Mne*_*nth 5

您不需要实例化Test来调用静态方法.你的主要看起来像这样:

public static void main(String[] args) {
    Test.test();
}
Run Code Online (Sandbox Code Playgroud)