创建子类导致父类初始化块的执行

 

当多个类之间有继承关系时,创建子类对象会导致父类初始化块的执行。

class base{
    int x = 10;
    void test(){
    System.out.println("Base method,x = "+x);
 }
}
public class JiCheng extends base{
    int x = 30;
    void test(){
    System.out.println("sub method,x = "+x);
 }
    public static void main(String[] args){
         JiCheng b = new JiCheng();
         b.test();
         System.out.println(b.x);

         base b1=new base();
         b1.test();
         System.out.println(b1.x);

         base b2;
         b2= new JiCheng();
         b2.test();
         System.out.println(b2.x);
 }
}

输出:

sub method,x = 30
30
Base method,x = 10
10
sub method,x = 30
10

 
posted @ 2015-10-17 21:47  那个豆叫红小豆  阅读(141)  评论(0编辑  收藏  举报