继承后,先调用父类的构造

继承后,先调用父类的构造

当子类创建对象时候,是会先调用父类当中的构造,会从最终的父类一直调用到子类当中

同理,对于代码块,也是会先调用父类的,再调用子类的

 

public class Animal {
   int a;
   Animal (int a){ //看到这里要想到,此时有参构造已经代替了默认的无参构造,并且该构造方法只能在本包中的类类名创建对象
       this.a = a;
       System.out.println("Animal类的有参构造");
   }
}
class Bird extends Animal{
    int b;
    Bird(int b,int a){
        super(a);
        this.b = b;
        System.out.println("Bird extends Animal类 , Bird 是有参构造");
    }
/**
 * 看不懂子类中所以父类当中的属性可以看:子类构造中有使用父类属性博客
 */
     /**再比如
         *  B(int a,double b){
         *         super(a); 
         *         x = b;
         *         
         *         把super(a) ,int a 带入变成super(int a)这个就有点类似于构造方法,
         *         只不过构造方法的名字是类名,这里是在子类中调用了父类的构造方法,把名字改为了super而已
         */
}

class Cat extends Bird{
     int c;
     Cat(int c,int a,int b){
         super(a,b);
         this.c =c;
         System.out.println("Cat extends Bird类 , Cat 是有参构造");
     }
}




 

public class Te {

    public static void main(String[] args) {
         Cat cat = new Cat(1,2,3);
        System.out.println("cat的值是:"+cat.a+"--"+cat.b+"--"+cat.c);
         }
    }

 

Animal类的有参构造
Bird extends Animal, Bird 是有参构造
Cat extends Bird, Cat 是有参构造
cat的值是:3--2--1

Process finished with exit code 0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值