java多态

1.

下面的d只能调用animal里面的东西。第一个d只能指向狗对象。而第一个d可以指向animal的任何子对象。

2.

3.

在这个过程中,自始至终都是一个子类对象在做着类型的变化而千万别把父类对象转成子类型,那是不可能。

这样把父类对象转化成子类型,是有问题的。如果Animal()换成dog()就可以。

4.在编译时没有问题,运行时会出错中

5.

6.java多态例子

http://www.jczhijia.com/CoursePay/14888.html

7.非静态成员函数编译看左边,运行看右边。其他的都是看左边。

8.在非静态成员函数运行时期,参考的是引用型变量所属的类中是否有调用的方法,有编译通过,没有编译失败。

   运行期间:参考的对象所属的类中是否有调用的方法,如果有运行子类自己的方法,如果没有就父类的方法

原文地址:https://www.cnblogs.com/qianxinxu/p/6105527.html