aks*_*uri 5 java static static-methods
调用函数时
testFunc(),我没有使用语法Apples.testFunc()。但是代码运行成功。为何如此?
class Apples {
public static void main(String args[] ) {
testFunc();
}
public static void testFunc() {
System.out.println("Hello world!");
}
}
Run Code Online (Sandbox Code Playgroud)
Ani*_* B. 10
因为,静态方法在同一个类中。因此,您无需指定类名。
如果在不同的类中,则需要指定类名。
请记住: 非静态方法可以访问静态和非静态成员,而静态方法只能访问静态成员。
例如 :
调用不同类中存在的静态方法,您需要这样做:
import com.example.Test;
public class Apples {
public static void main(String args[]) {
Test.testFunc();
}
}
Run Code Online (Sandbox Code Playgroud)
package com.example;
public class Test {
public static void testFunc() {
System.out.println("Hello world!");
}
}
Run Code Online (Sandbox Code Playgroud)