java 静态代码块 构造器

  1. static{}>{}>构造器

  2. static{} 只是在第一次执行

  3. 优先执行父类

    运行结果 : 父类static{} 子类static{} 父类{} 父类构造器 子类{} 子类构造器

  4. base static + test static+base...+base constructor+test...+ test constructor


package org.zvc;
public class TestStatic extends Base{
    {
    System.out.println("test ...");
    }
    static{
        System.out.println("test static");
    }    
    public TestStatic(){
        System.out.println("test constructor");
    }
    public static void main(String[] args) {
        new TestStatic();
        new TestStatic();
        // base static + test static +  base... + base constructor  + test ...+test constructor
        // base constructor + base... + test constructor + test...
    }
}
 
class Base{
    {
    System.out.println("base ...");
    }
    static{
        System.out.println("base static");
    }
    public Base(){
        System.out.println("base constructor");
    }
}


你可能感兴趣的:(java 静态代码块 构造器)