代码:

package com.company;

 
public class Main {
    public static void main(String[] args) {
        new MyClass();
    }
}

 class Test {
    Person person = new Person("Test");
    static{
        System.out.println("test static");
    }

    public Test() {
        System.out.println("test constructor");
    }
}

class Person{
    static{
        System.out.println("person static");
    }
    public Person(String str) {
        System.out.println("person "+str);
    }
}


class MyClass extends Test {
    Person person = new Person("MyClass");
    static{
        System.out.println("myclass static");
    }

    public MyClass() {
        System.out.println("myclass constructor");
    }
}

结果:

test static
myclass static
person static
person Test
test constructor
person MyClass
myclass constructor

 ========================================================

默认构造函数与有参数构造函数

代码:

public class Main {
    public static void main(String[] args) {
        new Child("mike");
    }

}
class People {
    String name;

    public People() {
        System.out.print(1);
    }

    public People(String name) {
        System.out.print(2);
        this.name = name;
    }
}

class Child extends People {
    People father;

    public Child(String name) {
        //super(name);
        System.out.print(3);
        this.name = name;
        father = new People(name + ":F");
    }

    public Child() {
        System.out.print(4);
    }
}

结果:

132
View Code

相关文章: