静态方法为类所有,一般情况下我们通过类来使用(而对于不加static的实例方法我们则只能通过对象的来调用)。
以下我们通过一些代码的例子来对此进行说明:
public class Main{
public static viod main(String[] args){
//Test01();//直接调用Test01会报Non-static method xx cannot be referenced from a static context.
//用如下方式调用Test01
Main m=new Main();
m.Test01();
//Test02可以直接调用,通过类
Main.Test02();
}
public viod Test01(){
System.out.println("此方法为非静态方法")
}
public static viod Test02(){
System.out.println("此方法为静态方法")
}
}
public class Main{
public static viod main(String[] args){
TestNonStatic.Test01();//会报错,不能直接引用其他类的非静态方法
TestNonStatic testnonstatic=new TestNonStatic();
TestNonStatic.Test01;//依然可以通过创建一个实体对象来访问。
TestNonStatic.Test02();
}
}
class TestNonStatic{
viod Test01(){
System.out.println("其他类中的实例方法")
}
static void Test02(){
System.out.printlin("其他类中的静态方法")
}
}