构造方法和构造代码块

package com.bjpowernode.t07;

/*
* 构造代码块
* */
public class TestConstractorBlock {

public static void main(String[] args) {
User user = new User();
user.m1();
}

}


class User{

int age = 18;



//属性声明在构造代码块的下面,并且在构造代码块中使用了该属性,
//此时会编译报错,此时被认为是还没有赋值
//int age = 18;

public User() {

System.out.println("这是构造方法中的年龄:" + age);
}

public void m1(){
System.out.println("m1");
}

//构造代码块
//构造代码块是优先于构造方法执行的
{
age = 20;
System.out.println("这是构造代码块中的年龄:" + age);
}

}

原文地址:https://www.cnblogs.com/Koma-vv/p/9501830.html