您好,欢迎来到尔游网。
搜索
您的当前位置:首页【学习笔记】java非局部变量有初始值

【学习笔记】java非局部变量有初始值

来源:尔游网

由于很久没用到这个知识点,差点忘了,今天遇到,写个记录

现在我有一个课程类(Course)

public class Course {
    private int cid; // 课程号

    public Course() {} // 空构造

    public int getCid() { // 获取id
        return cid;
    }

}

我新建一个课程类,打印 id,结果是0

Course c = new Course();
System.out.println(c.getCid()); // 打印结果是0

但我这样写,则会报错 ` 变量 'i' 可能尚未初始化 `

int i;
System.out.println(i);

为什么这里的 i 是报错?

因为 i 是局部变量,没有初始化,所以不能使用

如果不是局部变量呢

我在外面定义一个 x 和 y ,然后在main函数中打印,结果都为0

public class Test {
    static int x;
    int y;

    public static void main(String[] args) {
        System.out.println(x);      // 结果为0
        Test test = new Test();
        System.out.println(test.y); // 结果为0
    }
}

说明非局部变量有初始值(局部变量没有初始值,所以必须初始化才能用)

不同类型初始值是多少可以参考这篇文章:

参考: 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- axer.cn 版权所有 湘ICP备2023022495号-12

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务