关于继承构造器的调用

简介: 知识点: 1.子类构造器默认第一行super()调用父类构造器 2.this()与super()都只能存在第一行 一山不容二虎public class Person { public Person(){...

知识点:
1.子类构造器默认第一行super()调用父类构造器
2.this()与super()都只能存在第一行 一山不容二虎

public class Person {
    public Person(){
        this("123");   //调用当前类有参构造器
        System.out.println("父类无参构造器");
    }
    public Person(String name){
        System.out.println("父类有参构造器");
    }

    public static void main(String[] args) {
        ChinaPerson ppp = new ChinaPerson();
    }
}
public class ChinaPerson extends Person{
    public ChinaPerson(){
//      super();   默认调用父类构造器不显示
        System.out.println("子类无参构造器");
    }
    public ChinaPerson(int i){
//      super();   默认调用父类构造器不显示
        System.out.println("子类有参构造器");
    }
}

输出:

父类有参构造器
父类无参构造器
子类无参构造器

目录
相关文章
C# 继承类中(父类与子类)构造函数的调用顺序
C# 继承类中(父类与子类)构造函数的调用顺序
|
2月前
在类中使用静态方法和实例方法有什么区别?
在类中合理地使用静态方法和实例方法,可以更好地组织和管理代码,提高代码的可读性、可维护性和性能,根据具体的业务需求和逻辑来选择使用哪种方法是编写高质量面向对象代码的关键。
|
6月前
|
Java
子类的父类和接口具有共同的方法
子类的父类和接口具有共同的方法
39 7
|
8月前
类的无参方法
类的无参方法
|
XML Java 数据格式
Java中静态代码块、构造方法、代码块、父类与子类之间执行顺序及父类子类实例化对象
Java中静态代码块、构造方法、代码块、父类与子类之间执行顺序及父类子类实例化对象
226 0
为什么子类会调用父类无参的构造函数
为什么子类会调用父类无参的构造函数
继承类的方法
继承类的方法
125 0
|
Java C++
C++类中在构造器中调用本类的另外构造器
C++类中在构造器中调用本类的另外构造器
103 0
java50-子类继承会优先调用父类的构造器
java50-子类继承会优先调用父类的构造器
86 0
java50-子类继承会优先调用父类的构造器
学生类-构造函数
学生类-构造函数
202 0