Hola, me gustaría saber si es posible obtener un objeto que este cargado en la memoria, para su utilización.
Gracias de ante mano.
| |||
Respuesta: Como obtener un objeto cargado en memoria Cita: bien, lamento no haberme expresado bien, entiendo que los objetos existen en memoria, es por eso que hago la pregunta, sucede que he estado leyendo con relación a reflexiones (reflect) en donde se puede tomar un objeto y obtener la información de este, aunque hay que especificar cual es dicho objeto, lo que quiero saber es como identificar (de ser posible) un objeto cargado en RAM, donde yo no sepa cual es el .class de este y mucho menos el código..... espero haberme expresado mejor |
| ||||
Respuesta: Como obtener un objeto cargado en memoria Hola, No se entiende bien lo que quieres hacer, por qué no conocerías el nombre de la clase? si tienes la instancia del object entonces haces así:
Código Java:
Ver original y ahí ya obtienes el nombre de la clase con package incluído... Creo que si te explicaras mejor, quizás podríamos ayudarte un poco más...
__________________ Desarrolloador Freelance - http://www.mvdit.com.uy |
| ||||
Respuesta: Como obtener un objeto cargado en memoria Hola: Creo que lo que quiere saber es para qué sirve la reflection de java, ya que habitualmente sabes qué clases tienes y sabes llamar a sus métodos sin necesidad de reflection. Normalmente usan reflection algunas librerías java que van a tratar con objetos que todavía no están definidos. Cuando alguien haga un programa usando esa librería, creará sus propias clases y la librería no tiene ni idea de cuales son. Por ejemplo, imaginate que vas a hacer una librería capaz de escribir los atributos de una clase por pantalla. Harías una clase estilo esto
Código Java:
Ver original y esa clase la compilas, la metes en un libreria.jar (sin main ninguno) y se la pasas a la gente para que la use. Cada uno creará sus propias clases y llamara a imprime(miPropiaClase). La unica forma en que puedes implementar ese metodo imprime() para que funcione con cualquier clase que se le ocurra a cualquier usuario futuro es usando reflection. Este es un ejemplo muy tonto, pero por ejemplo, Hibernate es una librería para guardar datos en base de datos y recibe clases cuyos atributos guardará en tablas de base de datos. Hibernate usa reflection (y más cosas) para poder hacer esto con cualquier clase que luego un programador invente. Se bueno. |
Etiquetas: |