public class ConstructorTest1 {
{//构造代码块
System.out.println("执行构造代码块");
}
public ConstructorTest1() {
System.out.println("执行无参构造函数");
}
public ConstructorTest1(String string) {
System.out.println("执行有参构造函数");
}
public static void main(String[] args) {
new HelloB();
new ConstructorTest1();
new ConstructorTest1("con");
}
}
class HelloB extends HelloA {
public HelloB() {
System.out.println("HelloB");
}
{
System.out.println("I'm B class");
}
static {
System.out.println("static B");
}
}
class HelloA {
public HelloA() {
System.out.println("HelloA");
}
{
System.out.println("I'm A class");
}
static {
System.out.println("static A");
}
}
输出结果:
static A
static B
I'm A class
HelloA
I'm B class
HelloB
执行构造代码块
执行无参构造函数
执行构造代码块
执行有参构造函数