多態使用時,父類多態時需要使用子類特有對象。需要判斷 就使用instanceof


instanceof:通常在向下轉型前用於健壯性的判斷,判斷是符合哪一個子類對象

package Polymorphic;

public class TestPolymorphic {

public static void main(String[] args) {
cat c = new cat();
cat c2 = new cat();
c.eat();
// Animal d= new dog();
// d.eat();
// //這里就是弊端,不能用子類引用去調用子類特有的方法
//
// dog s = (dog)d;
// s.hj();

}
public void eat(Animal a){
a.eat();
//instanceof:用於判斷對象的具體類型,只能用於引用數據類型判斷
//如果a接收的是dog對象 則執行dog中的hj方法
if( a instanceof dog){
dog s = (dog)a;
s.hj();
}
}

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM