java static成员变量方法和非static成员变量方法的区别 ( 二 )

时间:2021-01-28 20:18:45

原创文章,未经作者允许,禁止转载!!!

静态成员变量不用new对象,在类加载的过程中就已经初始化存放在数据区域,静态成员变量是类和所有对象共有的,
类和对象都可以改变它的值,每一次改变值之后,静态成员变量的值在所有对象里面都将改变。

java static成员变量方法和非static成员变量方法的区别 ( 二 )

非静态成员变量只能通过对象来赋值,通过对象来改变非静态成员变量的值只对该对象起作用,对其他对象无效

java static成员变量方法和非static成员变量方法的区别 ( 二 )

总结:

理解了内存,就理解了一切,就理解了各种各样的语言。
所有的语言无非都是这样: 局部变量分配内存永远在栈里面,new出来的东西分配内存永远是在堆里,静态的东西分配内存永远是在数据区。剩下的代码肯定是在代码区。所有的语言都是这样。