Java局部變量為什么要初始化 如題。謝謝。
2 回答

小怪獸愛吃肉
TA貢獻1852條經(jīng)驗 獲得超1個贊
首先糾正一個觀點,全局變量和局部變量都是需要初始化的。這是因為使用沒有初始化的變量是不安全的。只不過全局變量的初始化工作可以交給JVM。而為什么局部變量不可以呢。我認為是出于性能等多方面的考慮。
成員變量的值存放于堆中,JVM在分配內(nèi)存時將整塊區(qū)域置為零即完成了初始化,方便快捷。而局部變量運行時被分配于棧中,量大,生命周期短,如果由JVM完成初始化,將是一筆很大的性能開銷。所以java明文規(guī)定局部變量必須初始化。
建議學習一下jvm內(nèi)存模型
添加回答
舉報
0/150
提交
取消