爲什麼要寫這篇博客:
對象的轉型是面向對象多態性的體現,必須深刻理解。
向上轉型:
父類引用指向子類對象
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類型的對象。