代码块有:普通块、构造块、静态块、同步块等等,本文着重介绍前三种。
-
普通块:限制局部变量的作用范围
public void a(){ { System.out.println("这是普通块"); int num = 10; System.out.println(num); } // System.out.println(num); }
-
构造块:处于方法外
public class Test { public static void b(){ System.out.println("------b"); } { System.out.println("------这是构造块"); } }
-
静态块:在静态块中只能访问静态属性和静态方法
public class Test { int a; static int sa; public static void b(){ System.out.println("------b"); } static{ System.out.println("-----这是静态块"); System.out.println(sa); b(); } }
代码执行时,最先执行静态块,只在类加载的时候执行一次,所以一般写项目时创建工厂、数据库的初始化信息都放入静态块,用于执行一些全局性的初始化操作;之后执行构造块(不常用);再执行构造器;最后执行方法中的普通块。