ClassCastExcepcion "AYUDA"

el_marcos
09 de Junio del 2005
lo q pasa es q qiero convertir un objeto serializado d un archivo a una clase de tipo X.. pero se a q clase puedo convertir.. creo q el error esta en q no puedo convertir un objeto de tipo object a ningun otro tipo porq es el mas grande!!! osea el padre, y creo q la conversion solo es a tipos mas grandes...
Si alguien sabe como puedo hacerlo sin necesidad de convertir a otro tipo, favor de responder!!!
se les agradeceria mucho, gracias
Chau... At. Ing. Plata

chuidiang
09 de Junio del 2005
Hola:

Sí puedes convertir de Object a otra clase, con la única condición de que el Object sea realmente una instancia de la otra clase. Por ejemplo, si tienes dos clases A y B

Object objecto = new A();
A a = (A)objeto; // Esto funciona, puesto que objecto es en realidad una instancia de A
B b = (B)objeto; // Esto da ClassCastException

Si objeto fuese null, no podrías hacer cast a ninguna otra clase.
Lo habitual es comprobar antes de hacer el cast

if (objecto instanceof A)
{
A a = (A)objecto;
}

Se bueno.