PDA

Ver la versión completa : Ayuda con JAVA



Bizkaitarra
09/11/2009, 20:12
Hola,
Tengo que hacer una practica de Robocode y estoy haciendo un manejador de estados.
Dicho manejador, tiene un Vector con los nombres de todos los estados existentes y otros datos sobre ellos.
Resulta que cada estado va tener una clase asociada y todos van a ejecutar parecidos métodos (algunos no actuaran frente a algunos eventos y otros si)

Desde el manejador, quiero en algún momento hacer un new Estado1 y luego preguntar a dicho estado si puedo pasar a el.

El caso es el siguiente:



listaEstados es un Vector de estados
String estado="";

for (i=0;i<listaEstados.size;i++) {
estado=(Estado) listaEstados.elementAt(i).obtNombre();
//Aqui viene el problema, se que la clase se llama como el contenido de estado,
//pero, no se como hacer un new de ese contenido... para que nos entendamos
//sería algo así:
contenidoDeEstado est = new contenidoDeEstado();
}

¿¿¿Sugerencias??

Wave
09/11/2009, 20:31
Suponiendo que Estado sea una interficie o superclase (sino no se como haras los casts),
puedes instanciar los objetos utilizando reflection.
Estado estado = (Estado)(Class.forName("packete de tus clases" + "nombre de la clase").newInstance());
Creo que con eso ya sirve ^^

Bizkaitarra
09/11/2009, 20:45
Suponiendo que Estado sea una interficie o superclase (sino no se como haras los casts),
puedes instanciar los objetos utilizando reflection.
Estado estado = (Estado)(Class.forName("packete de tus clases" + "nombre de la clase").newInstance());
Creo que con eso ya sirve ^^

Ok, muchas gracias, algo así quería