关于方法的多态

来源:10-1 Java 中的多态

阿楠呐

2018-08-10 15:22

在这节课的案例中

Animal obj1 = new Animal();

Animal obj2 = new Dog();

这两个有什么区别吗

如果换成Dog obj2 = new Dog(); 

也是可以的把


写回答 关注

2回答

  • code_walker
    2018-08-13 17:02:23

    建议了解一下实现多态的三个必要条件:继承,重写,向上转型。

    父类类型的引用可以调用父类的所有属性和方法。

    子类重写父类方法,父类引用指向子类对象时,可调用子类中重写方法。

    子类重载父类方法,父类引用指向子类对象时,无法调用子类中重载方法(父类中不存在该方法)。

  • ITgirl_hi
    2018-08-10 16:21:36
    Animal obj1 = new Animal(); //1. 父类的引用指向父类的对象
    Animal obj2 = new Dog();    //2. 父类的引用指向子类的对象
    Dog obj2 = new Dog();       //3. 子类的引用指向子类的对象
    //总的来说,第一种和第三种属于一类,都是本类的引用指向本类的对象。


    阿楠呐

    父类引用和子类引用有什么区别吗,或者说,他们分别适合哪种场景使用

    2018-08-10 16:45:33

    共 1 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530655 学习 · 6091 问题

查看课程

相似问题