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

Posted lbky

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了静态变量和实例变量的区别相关的知识,希望对你有一定的参考价值。

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

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

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

技术图片

  静态变量被存储到内存的静态区,实例变量被存储到堆中。静态变量是和类相关的,使用类名直接调用。实例变量是和对象相关的必须通过对象名调用。

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

以上是关于静态变量和实例变量的区别的主要内容,如果未能解决你的问题,请参考以下文章

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

在java语言中,静态变量和普通变量有啥区别?

Java 局部变量实例变量类变量(静态变量)区别

局部变量,实例变量,静态变量

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

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