Java中静态方法与非静态方法的区别?

如题所述

静态方法在创建对象前就可以使用了,非静态方法必须通过new出来的对象调用。

如:

public  class Per{

public static String  getType(){

return "人类";

}

public  String getName(){

return "张三";

}

}

上面这个类中的getType方法,在没有new对象前这就可以这样用:

String type=Per.getType();//type="人类";

而getName方法则不能这样使用,编译都不会通过

getName必须这样:

Per p=new Per();

String name=p.getName();//name="张三";

当然,getType方法也可能通过对象调用:

String type=p.getType();//type="人类";

温馨提示:答案为网友推荐,仅供参考