javan

i like java
随笔 - 0, 文章 - 28, 评论 - 2, 引用 - 0
数据加载中……

对于全局变量(global)、静态全局变量(static),静态局部变量、局部变量理解

变量分为:全局变量、静态全局变量、静态局部变量和局部变量;
它们的存储位置:全局变量和静态变量存储在堆里的静态存储区里;而局部变量存在于栈里。
它们的作用范围:全局变量作用于整个源程序所包含的所有源文件中;静态全局变量与位置关联,作用于它所在的源文件中;局部变量作用于其定义的函数中
静态变量存储在静态存储区中,不需要实例化对象;在程序一开始就给它分配空间,直到程序结束;如果未初始化将被赋值为0;
全局变量在对象的生命周期里存在,如果对象被销毁了,这个普通变量将会消失;而静态全局变量是在类的生命周期里存在;

栈主要存储局部变量,当变量消失后,将在栈里自动被释放;
堆中主要存储对象、数值等,当生命周期到了,将变成垃圾,等待垃圾回收站回收。

使用:当变量仅在某个文件中使用,最好将其定义为静态变量;若全局变量仅在某个函数中使用最好将其定义为局部变量;
   




写的真乱。。。以前都是看别人写的,还没形成习惯哈 FIGHTING



posted on 2009-03-31 09:54 whl 阅读(1090) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: