Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Duda Comparación Tipos Java
velasquezerik Sin conexión
programador aficionado
**

Mensajes: 20
Registro en: Oct 2011
Reputación: 0
Mensaje: #1
Duda Comparación Tipos Java
Programando mi proyecto en Java me he encontrado con este Problema.
He tenido la necesidad de Crear una interfaz comando
Código:
public interface Comando {

    //tranformar el comando a string
    public String toString();
    
    //recibir el String y asignar la data al comando
    public void loadData(String e);
    
}
la cual me permite ejecutar distintos comandos necesarios en mi proyecto
Pero para ejecutar esos comando he creado un Listener y un Event
Código:
public class NewComandEvent extends EventObject {
    Comando comando;
    public NewComandEvent(Object source, Comando comando){
        super(source);
        this.comando = comando;
    }
    public Comando getComando(){
        return comando;
    }
    
}
mi problema es el siguiente Los comando pueden ser cualquiera que yo defina
y las clases que necesitan tomar algun evento especifico de esos comando deben tomarlo y ejecutarlo. Como puedo yo diferenciar esos comandos uno del otro.
Actualmente tengo el comando AtaqueCaballero Y moverParcela
Código:
private void manejarEvento(NewComandEvent evt){
         if(evt es un Ataquecaballero)
         //hago lo que debo hacer con el ataque
        if(evt es un moverParcela)
        //hago lo que debo hacer parcela y asi sucesivamente

    }
Mi problema es que no se hacer esa comparacion de tipos de evento con la instancia evt
quien pueda ayudar se lo agradezco
14-02-2012 10:08 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
demian Sin conexión
Administrator
*******

Mensajes: 1.808
Registro en: Jun 2010
Reputación: 0
Mensaje: #2
RE: Duda Comparación Tipos Java
En realidad no puedes hacer la comparación con evento porque evento es siempre del mismo tipo (NewComandEvent). La comparación la tienes que hacer con el comando que tiene dentro el evento, es decir:

Código:
private void manejarEvento(NewComandEvent evt){
         if(evt.getCommand() instanceof AtaqueCaballeroComando)
          //hago lo que debo hacer con el ataque

        if(evt.getCommand() instanceof MoverParcelaComando)
         //hago lo que debo hacer parcela y asi sucesivamente
    }

Ojo, aquí estoy asumiendo que AtaqueCaballeroComando y MoverParcelaComando son clases que eventualmente heredan de Comando (es decir, que tienen a comando como clase padre, abuelo, etc).

[Imagen: dmi-1.jpg]
15-02-2012 08:12 AM
Visita su sitio web Encuentra todos sus mensajes Cita este mensaje en tu respuesta
velasquezerik Sin conexión
programador aficionado
**

Mensajes: 20
Registro en: Oct 2011
Reputación: 0
Mensaje: #3
RE: Duda Comparación Tipos Java
Gracias Profesor

Ya lo implemente y lo probe... No hubo problemas..
Ahora a continuar con la integracion..
15-02-2012 03:16 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Enviar respuesta 


Salto de foro:


Usuario(s) navegando en este tema: 1 invitado(s)