代码块在构造方法外面,为什么运行Exercise hello=new Exercise();创建对象时,代码块里的内容也会被执行?
因为所谓程序就是按照顺序来执行一个个代码块的。
如上所述
在类的声明中,可以包含多个初始化块,当创建类的实例时(即创建对象),就会依次执行这些代码块。
静态初始化块只在类加载时执行,且只会执行一次,而普通初始化块和构造方法会反复执行——创建一个对象执行一次。
更详细的内容可参考http://www.imooc.com/code/1852