假設我們有以下定義。Java實例混淆
interface Vessel{}
interface Toy{}
class Boat implements Vessel{}
class Speedboat extends Boat implements Toy{}
在主,我們有這些:
Boat b = new Speedboat();
和(b instanceof Toy)
評估是true
?爲什麼?我的理解是,b
的參考類型是Boat
,但Boat
與Toy
無關,所以應該是false
,但答案是true
。
你應該閱讀[什麼是變量,對象和基準之間的差異?](http://stackoverflow.com/questions/32010172/what-is-the-difference-between-a -variable-對象和參考)。 –