Java实现继承过程概述
super();
在调用子类的构造器的时候,如果没有显示的写出 super(); ,那么,编译器会在佛那个加上 super(); 无参构造器
如果想调用父类的有参构造器,那么,必须显示的调用,编译器不会默认加上;
创建子类对象的过程就是从底层的基类开始往上,一层层的调用构造方法;
super(); super(参数); 都必须放在方法的第一个语句中;
代码:
package com.java1995;
public class A {
A(){
System.out.println("调用A的无参构造方法");
}
A(int a){
System.out.println("调用A的有参构造方法");
}
}
class B extends A{
B(){
super();
System.out.println("调用B的无参构造方法");
}
B(int a){
super(a);
System.out.println("调用B的有参构造方法");
}
}
class C extends B{
C(){
System.out.println("调用C的无参构造方法");
}
C(int a){
super(a);
System.out.println("调用C的有参构造方法");
}
}
测试代码:
package com.java1995;
public class Test {
public static void main(String[] args){
//C --> B --> A
C c=new C(1);
}
}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步