Java中代码块的详解

Java 中的代码块是指用 {} 括起来的一段代码。根据它们的位置和用途,代码块可以分为以下几类:

  1. 实例初始化块
  2. 静态初始化块
  3. 构造函数块
  4. 局部代码块
1. 实例初始化块

实例初始化块是在每次创建类的对象时执行的代码块。它在构造函数之前执行。

class Example {
    // 实例初始化块
    {
        System.out.println("实例初始化块执行");
    }

    // 构造函数
    Example() {
        System.out.println("构造函数执行");
    }
}

public class Main {
    public static void main(String[] args) {
        Example example = new Example(); // 输出:实例初始化块执行
                                         //      构造函数执行
    }
}

 

2. 静态初始化块

静态初始化块是在类加载时执行的代码块,只执行一次,用于初始化静态变量。

 

class Example {
    // 静态变量
    static int count;

    // 静态初始化块
    static {
        count = 10;
        System.out.println("静态初始化块执行");
    }
}

public class Main {
    public static void main(String[] args) {
        Example example = new Example(); // 输出:静态初始化块执行
    }
}

 

3. 构造函数块

构造函数块是一个在构造函数内部定义的代码块。每次创建对象时,构造函数块都会被调用。

class Example {
    // 构造函数
    Example() {
        System.out.println("构造函数开始");
        
        {
            System.out.println("构造函数块执行");
        }

        System.out.println("构造函数结束");
    }
}

public class Main {
    public static void main(String[] args) {
        Example example = new Example(); // 输出:构造函数开始
                                         //      构造函数块执行
                                         //      构造函数结束
    }
}
4. 局部代码块

局部代码块是在方法内部定义的代码块,用于限制变量的作用域和提高代码的可读性。

public class Main {
    public static void main(String[] args) {
        int x = 10;
        System.out.println("x 的值: " + x);

        // 局部代码块
        {
            int y = 20;
            System.out.println("y 的值: " + y);
        }

        // y 在这里是不可访问的
        // System.out.println(y); // 编译错误
    }
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值