非静态初始化静态成员变量没报错

来源:8-10 Java 中的 static 使用之静态初始化块

幕布斯6000395

2017-09-20 10:21

// 静态初始化块

       { 

System.out.println("通过静态初始化块初始化age");

age = 20;

}


写回答 关注

2回答

  • M__
    2017-09-21 21:13:21

    这个问题问得好。

    静态初始化块只能给静态变量赋值,不能初始化普通的成员变量,但是你这个情况是用“普通初始化块”给“静态变量”赋值,没有问题。

    M__ 回复幕布斯600...

    跟那个执行先后顺序没关系。我的意思是,针对你这个问题,你的做法是用“普通初始化块”给“静态变量”赋值,与上面我说的“静态初始化块只能给静态变量赋值”不是一个做法

    2017-09-21 22:02:53

    共 2 条回复 >

  • 幕布斯6000395
    2017-09-20 10:23:23

    http://img1.mukewang.com/59c1d102000122dd08650414.jpg为什么运行正常没报错

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530560 学习 · 6091 问题

查看课程

相似问题