一,局部代码块
存在于方法里面
public class Person{ public void run(){ System.out.println("局部代码块"); } }
二,构造代码块
public class Person{ { System.out.println("构造代码块"); } }
构造代码块:直接在类中定义且没有加static关键字的代码块称为{}构造代码块。构造代码块在创建对象时被调用,每次创建对象都会被调用,并且构造代码块的执行次序优先于类构造函数。
三,静态代码块
public class Person{ static { System.out.println("静态代码块"); } }
在java中用{}括起来的称为代码块
四,同步代码块
synchronized(this) { }
五,四种代码块执行顺序
静态代码块-->构造代码块-->构造函数-->局部代码块-->同步代码块
(转自网上)