Java:静态代码块、构造代码块、构造函数

2016-12-21  本文已影响0人  Josaber

先看一段程序:

public class Str {

    static {
        System.out.println("static{1}");
    }
    static {
        System.out.println("static{2}");
    }
    {
        System.out.println("{}");
    }

    Str() {
        System.out.println("Str()");
    }

    public static void main(String[] args) {
        new Str();
        new Str();
    }
}

执行结果为:

static{1}
static{2}
{}
Str()
{}
Str()

结论:

  1. 静态代码块按顺序执行,且执行一次(类加载时执行)
  2. 构造代码块,每次new对象时执行,且先于构造函数执行
  3. 执行构造函数
上一篇 下一篇

猜你喜欢

热点阅读