代码块:用{}的括起来的就叫代码块
代码块的分类:
1、普通块:定义在方法中用{}括起来的就是普通代码块
2、构造块:定义在类中的用{}括起来的就是构造代码块
构造块中的代码,会被加载到每一个构造器(构造方法前面)
特殊情况除外,比如使用this(参数);调用有参的构造方法,因为这一句必须放在首行
所以就不会在将构造块的代码加载到首行,简单来说冲突了
3、静态块:加上static使用{}括起来的就是静态块,优先级最高
4、同步块(在使用多线程的时候会使用,用来给共享空间进行加锁操作)
执行顺序:静态块--》构造块--》构造器--》普通块
package com.gml;
public class CodeBlockDemo {
{
System.out.println("构造代码块");//构造代码块
}
public void test1(){
System.out.println("test方法被执行");{
System.out.println("hello");
}
}
public static void main(String[] args) {
CodeBlockDemo cbd = new CodeBlockDemo();
cbd.test1();
{
System.out.println("main方法中的普通代码块");//普通代码块
}
}
static {
System.out.println("静态代码块");//静态代码块
}
public synchronized void test2(){
synchronized ("同步代码块"){
}
}
}
1014

被折叠的 条评论
为什么被折叠?



