/*
* 构造代码块,对象已创建就执行,优先于构造函数的执行
* 使用构造代码块可以实现所有对象的初始化;对象共性的初始化
* 构造函数只能对每一个对象进行初始化,如果实现每个对象新建的时候都会说hello那么就用构造代码块方便
*/
class Person{
int age;
String name;
//构造代码块
{
System.out.println("hello");
}
//无参构造函数
public Person() {
}
//有参构造函数
public Person(int age, String name) {
this.age = age;
this.name = name;
System.out.println(name+" "+age);
}
}

public class Demo5{
public static void main(String[] args) {
Person person = new Person(23,"小孟");
Person person2 = new Person(22, "小李");
}
}


/*构造代码块每创建一次对象就会执行一次。
* 输出结果:
* hello
小孟 23
hello
小李 22
*
*/