Java——代码块
一、代码块的种类
在Java语言中,类中是可以包含5种内容的,如下
- 成员变量
- 成员方法
- 构造器
- 代码块
- 内部类
代码块分为3种,分别是静态代码块、构造代码块、局部代码块
二、构造代码块
2.1、如何定义
在类中方法外定义一个大括号。
public class Student { { // 构造代码块 } }
2.2、执行特点
会在每一个构造方法执行前,执行一次。
2.3、作用
如果每个构造方法有重复的逻辑时。比如可以非静态常量做赋值。实际工作中用的地方不是很多。
三、静态代码块
3.1、如何定义
直接在构造代码块上加上static关键字
public class Student { static { // 静态代码块 } }
3.2、执行特点
随着类加载到内存,会执行一次(类加载到方法区初始化的时候就会执行静态代码块)。
3.3、作用
可以对静态变量,或者静态常量进行初始化值
四、局部代码块
4.1、如何定义
任何局部代码位置都可以定义局部代码块,就是一对大括号。静态代码块、构造代码块、方法中、构造方法中都可以定义局部代码块。
public class Test { public static void main(String[] args) { sayHi(); } public static void sayHi(){ int a = 10; // 局部变量 { // ... 局部代码块 } } }
4.2、作用
可以限定变量的作用域
4.3、怎么找一个变量的作用域
找到包裹变量最近的一对大括号,从这个变量定义开始到右大括号都是该变量的作用域。
4.4.、例子
public class Test { public static void main(String[] args) { sayHi(); } public static void sayHi(){ int a = 10; // 局部变量 { // ... 局部代码块 int b = 200; System.out.println(a); // 10 System.out.println(b); // 200 } System.out.println(b); // 报错、无法访问 } }