Lo siento, pensé que esta era una pregunta de herencia: ¡era una pregunta de ArrayList desde el principio!Casting entre ArrayLists en Java
Bien, mi problema es más específico de lo que pensaba. Entonces tengo dos familias de clases. Tarjetas y Zonas Las zonas son cajas para sostener la tarjeta.
Las dos primeras subclases de Zone, ZoneList y ZoneMap están destinadas a ser dos formas diferentes de almacenar tarjetas. Otras subclases, como Hand y PokerHand, tienen sus propias formas específicas de tratar con las cartas que almacenan.
Donde se complica es que la Tarjeta también tiene subclases, como PokerCard, y que las subclases de ZoneList y ZoneMap están destinadas a organizarlas.
Así que en ZoneList tengo protected ArrayList<Card> cardBox;
y en PokerHand esperaba poder declarar cardBox = new ArrayList<PokerCard>();
ya que PokerCard es una carta. El error que estoy obteniendo es que aparentemente no puedo transmitir entre Card y GangCard cuando se trata de ArrayLists ... Así que estaba tratando de arreglar esto simplemente redeciendo cardBox como private ArrayList<PokerCard> cardBox;
dentro de PokerHand, pero eso resultó en el ocultamiento que estaba molestando mi programa
SO realmente, la pregunta es sobre el lanzamiento entre ArrayLists? Java me dice que no puedo, entonces ¿alguna idea sobre cómo puedo?
z.
Ahora que lo pienso de ella! Otra situación que creo que es similar es cuando llamo a getElementAt(); y me devuelve una GImage, ¡que no puedo tratar como una GImage! Java se levanta de brazos cuando trato de llamar a GImage.getName(); o algo así, porque no es una imagen es un objeto ...! – Ziggy