为什么要写这篇博客:
对象的转型是面向对象多态性的体现,必须深刻理解。
向上转型:
父类引用指向子类对象
Person p = new Student();
向下转型:
将[指向子类对象的父类引用]强制转换为子类引用
Person p = new Student();
Student s = (Student)p;
例:
<span> </span>Person p = new Student();
p引用能够调用Person类型的成员变量和成员方法,但无法调用Student的成员变量和成员方法。
//一个引用调用的是哪一个方法,取决于该引用指向的对象的类型。
<span> </span>Person p = new Student();
<span> </span>p.introduce();
<span> </span>p引用调用了Student类的introduce()方法,因为p引用指向了Student类型的对象。