java子类的创建过程,以及方法调用的过程

首先创建几个类 1) Animal接口 2)Dog类 3)LittleDog类
  在Animal接口中定义几个方法

public interface Animal {

    public void eat();

    public String sleep();

}
创建Dog类,实现Animal接口

public class Dog implements Animal{

    // Dog 类的构造方法
    public Dog() {
        System.out.println("Dog 对象的构造方法被执行了");
    }

    @Override
    public void eat() {
        System.out.println("Dog 的吃的方法执行了");
    }

    @Override
    public String sleep() {
        System.out.print("Dog 的睡觉的方法执行了");
        return "Dog Sleep";
    }

}
创建LittleDog 类继承父类Dog
public class LittleDog extends Dog {

    // LittleDog 类的构造方法
    public LittleDog() {
        System.out.println("LittleDog 对象的构造方法被执行了");
    }

    public void play() {
        System.out.println("LittleDog 对象的play 方法执行了");
    }

}
创建LittleDog 对象,执行其中的方法,对运行结果进行测试
public class AnimalTest {

    public static void main(String[] args) {
        // 来验证 父类 子类之间 构造方法,方法之间的调用顺序 
        LittleDog littleDog = new LittleDog();
        // 子类中没有显式声明,父类中已经显式声明的方法
        littleDog.eat();
        // 父类中没有,子类中独有的方法
        littleDog.play();
    }
}
执行结果如下

这里写图片描述

现总结如下:
    1、子类继承父类,再创建子类对象的时候,会从最顶端的父类的构造方法开始执行,知道执行到当前创建对象的构造方法。
    2、调用子类中没有显式声明的方法,它会去他的父类中找对应的方法,如果父类中没有就向它的祖父中取找,知道找到最顶端Object,如果还是没有找到,那么抛出异常。
    3、如果在子类的独有的方法中用到了父类,或者某个祖宗类的方法,那么会按照代码书写的先后顺序,先后执行。
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值