当前位置: 代码迷 >> 综合 >> Java基础之代码块
  详细解决方案

Java基础之代码块

热度:70   发布时间:2023-09-05 17:53:51.0

在java中一对{}包裹的代码就叫做代码块;
块{} : 是一个作用域
1、 {}写在方法中:普通语句块|局部代码块 执行时机:方法调用时候

public void test(){{System.out.println("这是普通代码块");       }
}

2、 {}写在类中方法外:构造块 执行时机:创建对象时

  public class Demo01{{System.out.println("这是构造块");}}       

3、 static{}写在类中方法外:静态块 执行时机:类加载

public class Demo01{static {		System.out.println("这是静态代码块");}
}

4、运行顺序
静态代码块static{}(同时存在多个时从上到下依次执行)—>main方法—>构造块(同时存在多个时从上到下依次执行)----->构造器

public class Black {//构造器public Black(){System.out.println("构造器");}	//构造块;创建对象的时候调用,在构造器之前执行存在多个构造码块的时候从上到下依次还行{System.out.println("这是构造块1");}{System.out.println("这是构造块2");}{System.out.println("这是构造块3");}{System.out.println("这是构造块4");}//静态代码块;加载类的时候加载到方法区,先与main方法执行,存在多个静态代码块的时候从上到下依次还行static{System.out.println("静态代码块先于main方法执行1");}static{System.out.println("静态代码块先于main方法执行2");}static{System.out.println("静态代码块先于main方法执行3");}static{System.out.println("静态代码块先于main方法执行4");}	public static void main(String[] args) {System.out.println("main方法执行");		//创建对象Black bl = new Black();		}
}

运行结果
Java基础之代码块

  相关解决方案