Foros del Web » Programación para mayores de 30 ;) » Java »

Obtener el nombre de clase de un Object casteado

Estas en el tema de Obtener el nombre de clase de un Object casteado en el foro de Java en Foros del Web. Hola a todos.... estoy haciendo una clase para mapear mis tablas (algo como un ORM)... y me tope con un problema.... yo creo un Object ...
  #1 (permalink)  
Antiguo 21/10/2014, 10:03
 
Fecha de Ingreso: abril-2009
Mensajes: 196
Antigüedad: 15 años, 6 meses
Puntos: 0
Pregunta Obtener el nombre de clase de un Object casteado

Hola a todos.... estoy haciendo una clase para mapear mis tablas (algo como un ORM)... y me tope con un problema.... yo creo un Object y le hago cast a una clase propia, pero cuando quiero obtener el nombre no me devuelve lo que esperaría....

Así es la cosa:

1. La clase que de la que se le hace casting es un campo del objeto principal que a su vez es otra clase mia:

Código:
objeto_= objeto_.getClass().cast(campos[i].getType());
objeto_.getClass().getSimpleName();  //Esto debería devolverme el nombre de la clase 'Categoria' pero en su lugar devuelve 'Class'
Que estoy haciendo mal? o ... como podría obtener lo que espero? Gracias!
  #2 (permalink)  
Antiguo 22/10/2014, 18:12
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Obtener el nombre de clase de un Object casteado

Hola,

Cita:
Iniciado por jotamarios Ver Mensaje
... yo creo un Object y le hago cast a una clase propia, pero cuando quiero obtener el nombre no me devuelve lo que esperaría....

Así es la cosa:

1. La clase que de la que se le hace casting es un campo del objeto principal que a su vez es otra clase mia:

Código:
objeto_= objeto_.getClass().cast(campos[i].getType());
objeto_.getClass().getSimpleName();  //Esto debería devolverme el nombre de la clase 'Categoria' pero en su lugar devuelve 'Class'
Que estoy haciendo mal? o ... como podría obtener lo que espero? Gracias!
Si getSimpleName() te devuelve Class es porque contiene una clase.

En otras palabras objeto_ es una Clase, no un Integer, ni un String, sino una Clase. Cuando haces Clase.getClase() te devuelve la clase de la clase y por eso getSimpleName() te devuelve Class.

Posiblemente, si el objeto lo casteas a Class puedas obtener el nombre de la Clase que representa.
Código Java:
Ver original
  1. ((Class) objeto_).getSimpleName()
Saludos,

Etiquetas: clase, nombre, object
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:52.