一、类变量和实例变量的区别
1.类变量是属于是所有对象的,用static修饰,实例变量是属于某个对象的
2.类变量也叫静态变量,不需要通过创建实例就可以调用。而实例变量需要通过对象来访问,即需要创建对象后才能进行调用
3.类变量在程序加载类的时候初始化,而且只初始化一次。
public class Person {// 类变量public static String name ;//实例变量public int age = 20;}
public class Main {public static void main(String[] args) {Person p1 = new Person();p1.name = "李四";p1.age = 18;System.out.println(p1.name +" "+p1.age);// 输出结果:李四 18Person p2 = new Person();//类变量是属于所有对象的,所以p1修改了name的值,p2的name也改变了//而实例变量是属于对象自身的所以p1的age改变不影响p2的值System.out.println(p2.name +" "+p2.age);// 输出结果:李四 20}}
二、类方法和实例方法的区别
1.类方法也叫静态方法,在程序刚开始时初始化,
2.类方法只能访问类的成员变量,无法访问实例变量,而实例方法两者都可以访问。
3.类方法可以通过类名直接调用。也可以通过对象.类方法,而实例方法只能通过对象.实例方法访问。
4.类方法不能被覆盖,实例方法可以被覆盖