A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王廷顺 中级黑马   /  2013-5-3 14:53  /  1386 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

全局变量与局部变量有哪些区别?被对象调用时,在内存中是怎样存储的,最好举例说明。

11 个回复

倒序浏览
java中不支持全局变量,全局变量是指可以全局访问的变量,
原因如下:
1.全局变量破坏了引用的透明性。
2.全局变量制造了命名空间冲突。

局部变量在内存中是存放在栈区的
回复 使用道具 举报
区别:
全局变量:在类中有效。有默认初始值。存放在堆内存中。
局部变量:在变量所在代码块有效。必须初始化值。存放在栈内存中。
回复 使用道具 举报
殇_心。 发表于 2013-5-3 15:16
区别:
全局变量:在类中有效。有默认初始值。存放在堆内存中。
局部变量:在变量所在代码块有效。必须初始 ...

二楼你好猛啊,到处都可以看到你解答的问题。而且都回答的这么好
回复 使用道具 举报
刘海东 发表于 2013-5-3 15:50
二楼你好猛啊,到处都可以看到你解答的问题。而且都回答的这么好

你也多逛逛。。。 到处就有你的身影了。
回复 使用道具 举报
殇_心。 发表于 2013-5-3 15:53
你也多逛逛。。。 到处就有你的身影了。

因为只学习了c学习Java
火候暂时还不到呀
很多问题我也回答不出来
经常潜水看看别人的回答。
回复 使用道具 举报
刘海东 发表于 2013-5-3 16:05
因为只学习了c学习Java
火候暂时还不到呀
很多问题我也回答不出来

我也是学c的。 打了3年酱油了。
回复 使用道具 举报
殇_心。 发表于 2013-5-3 16:12
我也是学c的。 打了3年酱油了。

我是化学专业的,
c只为过二级拿毕业证。
:P
回复 使用道具 举报
全局变量也叫实例变量,是对象特有的,当对象加载进堆内存的时候全局变量也被加载进该对象的内存区,并赋默认值,当对象被垃圾回收了,对象的内存就没了,它也就没了。局部变量存在于栈内存中,它随方法的结束而消亡。
回复 使用道具 举报
在Java中,“全局变量”是成员变量的俗称,一个在堆内存中,一个在栈内存中
回复 使用道具 举报
全局变量:可以被所有方法调用,初始化时在堆内存中,随着程序的结束而消亡
局部变量:只能在方法体内使用,初始化时在栈内存中,随着方法的调用结束而消亡
回复 使用道具 举报

如果问题解决请再次编辑,修改为已解决,若还有疑问,请继续追问
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马