静态代码块,构造代码块,构造方法执行顺序

14.对于代码:
class A {
    static {
        System.out.println(“A”); //静态代码块
    }
 
    {
        System.out.println(“B”);//构造代码块
    }  

    public A(){
        System.out.println(“C”);  /构造方法
    }   
}

class B extends A{
    static {
        System.out.println(“D”); //静态代码块
    }  

    {
        System.out.println(“E”); //构造代码块
    }

    public B(){
        System.out.println(“F”); //构造方法
    }

    @SuppressWarnings(“unused”)
    public static void main(String[] args){
        A a = new B();
    }
} 输出结果是:
 A.ABCDEF
 B.ADBCEF
 C.ABDECF
 D.ADBECF

 E.编译错误

答案:B

参考资料:http://blog.csdn.net/watermusicyes/article/details/7749712

发布了32 篇原创文章 · 获赞 5 · 访问量 2万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章