构造函数:用于初始化对象,可以有无参构造 和参数构造。
构造代码块:用于给所有对象进行初始化的,构造对象时首先会执行构造代码块。
public class test1 { @Test public void test(){ new Student(); new Student("name"); } } class Student{ //构造代码块 { System.out.println("构造代码块"); } private String name ; Student(){ System.out.println("默认构造"); } Student(String name){ System.out.println("参数构造"); } }
结果输出:
构造代码块
默认构造
构造代码块
参数构造
从代码可以看出 无论通过有参还是无参构造类的实例,静态代码块都会执行。