子类是如何访问父类的构造方法的

本文介绍了Java编程中的构造方法调用规则。当在子类中定义构造方法时,如果不显式调用父类的构造方法,Java会默认使用super()调用父类的无参构造器。示例代码展示了如何通过super([参数])调用父类的有参构造方法,以及不指定时如何自动调用无参构造方法。
摘要由CSDN通过智能技术生成

        在子类的每个构造方法中,如果你不手写super([参数])函数去调用父类对应的有参/无参构造函数,那么它会自动调用super()去调用父类的无参构造方法

public class Video04 {
    public static void main(String[] args) {
        Son s1 = new Son(); // Father类的无参构造
        Son s2 = new Son("xiaobo", "BOY", 21); // Father类的无参构造
    }
}

class Father {
    private String name;

    public Father() {
        System.out.println("Father类的无参构造");
    }

    public Father(String name) {
        this.name = name;
        System.out.println("Father类的有参构造");
    }
}

class Son extends Father {
    public Son() {
        // super(); 默认省略这一行,用于访问父类的无参构造方法
    }

    public Son(String name, String gender, int age) {
        // super(); 默认省略这一行,用于访问父类的无参构造方法
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值