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

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

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

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

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

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

总结:

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


下一篇:面向对象编程(二)封装--构造方法,this关键字,static关键字,方法重载