我有一個約100個對象的列表,這恰好是瓷磚。它看起來像這樣:如何確定我在列表中引用哪個子類?
List<Tile> Tiles;
其他地方在我的代碼我有一個從瓦基類派生的類,我會用房子這個例子:
public class house : Tile
在列表內往上頂的我添加了不同類型的瓷磚的數據結構:
Tiles.add(new house());
Tiles.add(new church()); //ect. ect.
我的問題是我怎麼知道哪些磚是教堂或房子,如果我在哪裏可以通過控制結構,引用列表就像一個for循環。基本上我需要比較兩種不同類型的瓷磚。甚至有可能知道我參考的是哪個孩子類?我確信對此有一個簡單的解釋,但是當涉及到面向對象的編程時,我並不十分精通,因此我甚至不完全確定當涉及到幫助時我應該尋找什麼。
我推薦重新設計,所以你不需要知道孩子類型是什麼。在下面的回答中添加一個像@MarcGravell這樣的虛擬方法。 – Brady