首页 > 解决方案 > 为什么成员变量在 Java 中设置为默认值?

问题描述

我已经阅读了如何不将局部变量设置为默认值以不具有未定义的行为,如果发生错误,我们知道,我们没有在该局部范围代码块内初始化局部变量的值。但是,在 Java 中为实例变量设置默认值的原因是什么?Java 编译器如何不够聪明,无法知道实例字段是否未初始化但对于 Java 中的局部变量足够聪明?这个决定的原因是什么?这个网站上的答案大约在 Java 7 之前或 7 之前,因为现在是 Java 14,我想知道事情是否发生了变化。

标签: java

解决方案


推荐阅读