1,普通代码块 2,构造块 3,静态代码块

1,普通代码块

package com.java1234.chap03.sec07;

public class Demo1 {
    public static void main(String[] args){
        int a=1;
        
        /**普通代码块(顺序执行)
         * 
         */
        {
            a=2;
            System.out.println("普通代码块");
        } 
        System.out.println("a="+a);
    }
}

2,构造块

package com.java1234.chap03.sec07;

public class Demo2 {
/**
* 构造块 (弥补构造函数的不足)
*/
{
System.out.println("通用构造方法");
}

public Demo2(){
System.out.println("构造方法一");
}
public Demo2(int i){
System.out.println("构造方法二");
}
public Demo2(int i,int j){
System.out.println("构造方法三");
}
public static void main(String[] args) {
new Demo2();//实例化一个对象 匿名类
}

}

3,静态代码块

package com.java1234.chap03.sec07;

public class Demo3 {
/**构造块
*
*/
{
System.out.println("通用构造块");
}
/*静态代码块(只执行一次,工厂只执行一次)
* */
static{
System.out.println("静态代码块");
}

public Demo3(){
System.out.println("构造方法一");
}
public Demo3(int i){
System.out.println("构造方法二");
}
public Demo3(int i,int j){
System.out.println("构造方法三");
}
public static void main(String[] args) {
new Demo3();//实例化一个对象 匿名类
new Demo3(2);
new Demo3(1, 2);
}

}

原文地址:https://www.cnblogs.com/zhanghongqiang/p/4340425.html