局部代码块
public class Test {
public static void main(String[] args) {
{
int a = 10;
}
// 执行到此处时候,变量a已经从内存中消失了。
// System.out.println(a);
}
}
构造代码块
public class Test {
private String name;
private int age;
{
// 构造代码块
System.out.println("构造对象");
}
// 构造代码块
// 1.写在成员位置的代码块
// 2.作用:可以吧多个构造方法中重复的代码抽取出来
// 3.执行时机 创建对象的时候,限制性代码块在执行构造方法
public Test() {
}
public Test(String name, int age) {
this.name = name;
this.age = age;
}
}
左侧第一个 无参构造 则是调用参数为空的有参构造的方法输出构造代码块中的内容
静态代码块
public class Test {
private String name;
private int age;
// 执行时机:
// 随着类的加载而加载,并且只执行一次
static {
System.out.println("静态代码块执行了");
}
public Test() {
}
public Test(String name, int age) {
this.name = name;
this.age = age;
}