抱歉,我以为这是一个继承问题:原来这是一个ArrayList问题!
好的,我的问题比我想象的更具体。我有两个类族。卡牌和区域。区域是用来容纳卡牌的盒子。
Zone的前两个子类,ZoneList和ZoneMap,旨在存储卡牌的两种不同方式。进一步的子类,如手牌(Hand)和扑克牌手(PokerHand),有其自己特定的处理存储的卡牌的方式。
问题变得复杂的地方在于,Card还有子类,比如PokerCard,而ZoneList和ZoneMap的子类是用来组织它们的。
所以在ZoneList中,我有protected ArrayList<Card> cardBox;
,在PokerHand中我希望能够声明cardBox = new ArrayList<PokerCard>();
,因为PokerCard是一张卡。我得到的错误是,当涉及ArrayLists时,我显然无法在Card和GangCard之间进行转换...所以我试图通过在PokerHand中重新声明cardBox为private ArrayList<PokerCard> cardBox;
来修复这个问题,但这导致了隐藏和程序故障。
所以,问题实际上是怎样在ArrayList之间进行强制转换?Java告诉我不能这样做,那么您有什么办法呢?
抱歉,这个太短,并无法确定它的意义。请提供更多信息以便我为您提供翻译。