猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
Java局部变量为什么要初始化
Java局部变量为什么要初始化 如题。谢谢。
猛跑小猪
浏览 1411
回答 2
2回答
婷婷同学_
编译器通不过如果没有初始化,类似c的随便指了一个地址。所以java直接编译失败了。
0
0
0
小怪兽爱吃肉
首先纠正一个观点,全局变量和局部变量都是需要初始化的。这是因为使用没有初始化的变量是不安全的。只不过全局变量的初始化工作可以交给JVM。而为什么局部变量不可以呢。我认为是出于性能等多方面的考虑。成员变量的值存放于堆中,JVM在分配内存时将整块区域置为零即完成了初始化,方便快捷。而局部变量运行时被分配于栈中,量大,生命周期短,如果由JVM完成初始化,将是一笔很大的性能开销。所以java明文规定局部变量必须初始化。建议学习一下jvm内存模型
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
Java
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续