• 招生咨询热线:4008-569-579 
  • 手机版
    用手机扫描二维码直达商品手机版
招生咨询热线
4008-569-579
机构主页 > 机构新闻 > 为什么Java中的局部变量必须要初始化
机构主页 > 机构新闻>为什么Java中的局部变量必须要初始化

为什么Java中的局部变量必须要初始化

来源:北京达内教育        时间:2023-05-26        热度:49℃        返回列表

现在假如你是java语言的开发者,你已经将对象保存在了堆内存中,而将局部变量保存在了栈内存中,你会怎么做呢?

Java 中的变量分为类变量,成员变量和局部变量,分别位于 JVM

的方法区、堆内存和栈内存中。类变量和成员变量都可以在类首次加载和类初始化时,给出默认值,但是局部变量就必须要在使用前赋值。

实际上,Java 完全可以设计成局部变量不需要初始化,只要作者们高兴。事实上,就有这样的语言,比如 C++。

当然,C++不强制必须初始化,不代表就不用初始化,实际上,C++开发者也都是建议对局部变量初始化,以防止出现野指针这类事情。

其实,不管是局部变量还是成员变量,都是必须要初始化的,那为什么成员变量会自动初始化?其实正是因为成员变量属于对象,而对象是保存在

堆中的,所以jvm就在初始化类的时候把成员变量初始化呢,而如果我们在调用方法的时候,还要jvm去将局部变量也进行初始化,是不是对会影响到性能呢?因此,直接强制局部变量必须要初始化反而更好。

电话咨询

电话咨询

咨询电话:
4008-569-579
回到顶部

回到顶部