Tengo este trozo de código.
En él, hay una clase "Elemento" que es padre de "Comida", "Puerta" y otras. Bueno, en el caso especial de "Comida" y "Puerta", éstas dos se manejan de forma diferente ya que tienen dos métodos ("getEnergia()" y "getMatrizDestino()") que no tienen las demás.
Mi pregunta es ¿Hay alguna forma de aplicar eso métodos sin estar recurriendo al "instanceof"?
Código:
Gracias. personaje.setPuntos(matrizContenedora.getElemento(posicion).getPuntos() + personaje.getPuntos()); //Si el elemento es tipo Comida entonces aplica esto: if (this instanceof Comida){ personaje.setEnergia(((Comida) matrizContenedora.getElemento(posicion)).getEnergia()+ personaje.getEnergia()); } //Si el elemento es tipo Puerta aplica esto: else if (this instanceof Puerta){ personaje.setMatrizContenedora(((Puerta) matrizContenedora.getElemento(posicion)).getMatrizDestino()); personaje.setPosicion(personaje.getMatrizContenedora().getPosicionVacia()); } matrizContenedora.eliminarElemento(posicion);