静态变量和实例变量的区别

静态变量用static修饰,实例变量不用。

public class Person {
static String position;
String name;
}

静态变量是随着类的字节码的加载而被加载进内存的,所以只要程序一启动运行到该类时就会被加载进内存,不管创建了多少个对象在内存中只存储一份。而实例变量是在创建对象以后才能被分配内存空间,创建对少个对象就会存储多少份。

静态变量和实例变量的区别

静态变量被存储到内存的静态区,实例变量被存储到堆中。

静态变量是和类相关的,使用类名直接调用。实例变量是和对象相关的必须通过对象名调用。

public static void main(String[] args) {
Person.position = "老师";
Person p = new Person();
p.name="老王"
}