首先,要明确类方法和实例方法的概念。类方法就是属于整个类的方法,它不会涉及到这个类的具体对象。实例方法:即对象方法,就是这个类的某个具体对象的方法。
先举个例子说明二者的区别。“人”可以是个类,“张三”是这个类的具体实例,即具体对象。“吃饭”是“人”都具有的方法,它不会具体到时哪个人,而“(张三)吃饭”却是“张三”这个人才有的方法。现在用具体的代码表现一下:
public class test { public static void main(String[] args) { Person zs=new Person(); Person ls=new Person(); zs.eat();//实例方法 ls.eat();//实例方法 } } class Person{ public void eat(){ System.out.println("Person eating......"); } }
通过代码可以很直观的区分什么是类方法和对象方法。现在具体把二者各自特点罗列如下:
类方法体有如下限制:(1) 类方法中不能引用对象变量;(2) 类方法中不能调用类的对象方法;
(3) 在类方法中不能使用super、this关键字。 (4)类方法不能被覆盖。
对象方法却没了这些限制:(1) 对象方法中可以引用对象变量,也可以引用类变量;(2) 对象方法中可以调用类方法;(3) 对象方法中可以使用super、this关键字。
注:有什么错误烦劳留言指正,本人Java初学者,欢迎老鸟赐教!
好人一生平安!