Java中的类变量实例变量类方法实例方法的区别

Posted

tags:

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

类变量:形如static int a; 顾名思义,类变量可以理解为类的变量,类变量在类加载的时候就已经给它分配了内存空间,不同于实例变量(int a; ),实例变量是在该类创建对象的时候分配内存的。并且,每创建一个对象,就会为该实例变量分配相应的内存空间,而类变量它不属于任何一个对象,它为所有对象所共享,所有对象的类变量占用相同的一处内存空间。调用类变量过程中,可以用 类名.类变量 也可以 对象名.类变量 来调用。类变量同于C/C++中接触的static变量,有记忆功能。

 

类方法:static void show(); 和类变量一样,类方法也是属于该类的,在类加载的时候,就为该类方法分配了入口地址,而实例方法,只有在对象创建后才被分配入口地址。同样的,类方法可以被所有对用调用,可以用 类名.类方法 或者 对象名.类方法 来调用。实例方法只能有对象名来调用。但要注意的是类方法不可以调用实例变量,这是因为,类方法是在类加载的时候被分配的,而这个时候,可能还没有创建对象来为实例变量来分配内存空间,即实例变量可能还不存在,所以不可以用类方法来调用实例变量。实例方法可以调用所有的实例变量和类变量。

 

实例变量和实例方法都是在对象消亡是才释放内存空间,类变量和类方法直到程序运行结束退出才释放所有的内存空间。

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

java 类方法和实例方法 以及 类变量和实例变量 各种区别

JAVA类与对象---实例变量与类变量的区别,实例方法和类方法的区别

java中的成员变量类变量,成员方法类方法 属性和方法区别

java 类方法和实例方法 以及 类变量和实例变量

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

JAVA中的类成员变量是存在堆还是栈里面呀?