代码块
1.概念
代码块其实就是一对{ },根据其放的位置不同,它的特性也不同
2.分类
(1)构造代码块
位置:类中方法外
作用:提取构造方法中共性的代码,每次执行构造方法都会执行。
(2)静态代码块
位置:类中方法外 ,被static修饰
作用:随着类的加载而加载,用于数据的初始化,与创建无关系
(3)局部代码块
位置:方法里面
作用:限定变量的作用域,在括号中的变量,出了括号就用不了
public class CodeBlock {
//静态代码块
static {
new Damk("10");
}
//测试类
public static void main(String[] args) {
Damk damk = new Damk();
Damk damk1 = new Damk("20");
//局部代码块
{
int a =30;
System.out.println(a);
}
// System.out.println(a);
}
}
class Damk{
//构造代码块
{
System.out.println("构造代码块");
}
public Damk(){
System.out.println("无参构造方法");
}
public Damk(String id){
System.out.println("有参构造方法"+id);
}
}
打印结果
---------------------------------------------
构造代码块
有参构造方法10
构造代码块
无参构造方法
构造代码块
有参构造方法20
30
---------------------------------------------