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();
}
}
}