package com.company.java.oop.cls;

class ClassF {
    // static ClassF instance =new ClassF();

         static {
            System.out.println("static{}.b =" +ClassF.b );
        }
static final int b = 10;  //加final关键字属于编译时优化,初始化完成, 所有static 代码块里打印的是 10 ,如果没有static 则为0 
}

public class TestClassObject09 {

    public static void main(String[] args) throws ClassNotFoundException {
        Class.forName("com.company.java.oop.cls.ClassF");
    }
}
 
package com.company.java.oop.cls;

class ClassF {

    static ClassF instance = new ClassF();  //实例化

    public ClassF() {
        System.out.println(b); b为10 ,如果 int b 没有用final 修饰的话那么为0.
    }

    static {
        System.out.println("static{}.b =" + ClassF.b);
    }
    static final int b = 10; // 加final关键字属于编译时优化,初始化完成, 所有static 代码块里打印的是 10 ,如果没有static 则为0 。
}

public class TestClassObject09 {

    public static void main(String[] args) throws ClassNotFoundException {
        Class.forName("com.company.java.oop.cls.ClassF");
    }
}
12-14 05:31
查看更多