在此说明:所截图片为尚学堂课件ppt中的内存。
java中多态三要素:1.要有继承这种模式2.子类对父类方法进行重写3.父类引用指向子类对象。

父类引用指向子类对象,是站在父类的角度看待子类的,子类的属性对其屏蔽,不能进行访问。但子类所重写的方法时在代码区存放,父类可调用,这就是动态绑定。

多态_第1张图片

多态_第2张图片

 

为什么要用父类引用指向子类对象这种机制呢,如下:为什么Collection c=new ArrayList();而不直接ArrayList c=new ArrayList();因为这样的话,用c可以调用父类中的方法,即子类公共的方法,当要换个容器装东西时,直接换new 对象就行,不需对下面的实现进行改写。

多态_第3张图片