向下轉(zhuǎn)型疑問
向下轉(zhuǎn)型成功的前提,不就是先進行向上轉(zhuǎn)型嗎?例如:Animal animal=new Cat();然后Cat cat=(Cat)animal;才能成功。而同一個父類引用無法調(diào)用其他子類對象,即:Animal animal=new Dog();不成立,所以Dog dog=(Dog)animal自然也不存在了。這樣的話還有必要先行用instanceof進行判斷嗎?
向下轉(zhuǎn)型成功的前提,不就是先進行向上轉(zhuǎn)型嗎?例如:Animal animal=new Cat();然后Cat cat=(Cat)animal;才能成功。而同一個父類引用無法調(diào)用其他子類對象,即:Animal animal=new Dog();不成立,所以Dog dog=(Dog)animal自然也不存在了。這樣的話還有必要先行用instanceof進行判斷嗎?
2018-06-22
舉報
2018-08-03
Animal animal=new Dog();這樣不就是父類的引用指向子類的對象么?這是成立的啊。
如果是Dog dog = new Animal();這樣是子類的引用指向父類的對象,這個是不可以的。
2018-06-24
instanceof 相當(dāng)于做一個check,減少程序執(zhí)行的出錯率