Trp_Cys 2023-03-13 16:40 采纳率: 58.6%
浏览 28
已结题

Java 为什么此处x默认为0?


public class AAA {
    int x;   // 0
    public static void main(String[] args) {
        int y;
        AAA a = new AAA();
        // y = 3 / a.x;   // ArithmeticException
        System.out.println(a.x);
    }
}

我预想的结果是报错:尚未初始化变量x,但是最后结果是说x = 0。 为什么此处x默认为0,是因为x是全局变量吗?

  • 写回答

4条回答 默认 最新

  • 於黾 2023-03-13 16:55
    关注

    在java中,局部变量不初始化会报错
    而全局变量和成员变量会有默认值
    这里x是类AAA 的成员变量,不是全局变量

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月21日
  • 已采纳回答 3月13日
  • 创建了问题 3月13日