instance variable与 class variable区别

img


instance variable与class variable区别

class variable是类变量也叫 static variable 静态变量,也就是在变量前加了static 的变量;
instance variable是实例变量,即没加static 的变量;
类变量和实例变量的区别在于:
类变量是所有对象共有,其中一个对象将它值改变,其他对象得到的就是改变后的结果,
类变量在类被第一次加载到jvm中时初始化,像c中的global variable,被所有实例中共享
而实例变量则属对象私有,某一个对象将其值改变,不影响其他对象;
实例变量在对象被创建时初始化,假如有5个对象,那5个对象中该实例变量可以有不同的值。

具体参考

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img

简单理解:
java中有成员变量和局部变量。
其中,成员变量分为类变量(也叫静态变量,class variable)和实例变量(instance variable)。
类变量属于所有类对象,是共享的变量;实例变量属于当前类。
区别:
实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。

 静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。

总之,实例变量必须创建对象后才可以通过这个对象来使用,静态变量则可以直接使用类名来引用。

1.使用new关键字定义的变量叫做实例变量(instance variable)
2.使用static定义的变量叫做类变量(class variable),也叫做静态变量,静态变量是属于类,不属于对象,通过类名访问。

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632