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

Dar valor a atributos con Reflection

Estas en el tema de Dar valor a atributos con Reflection en el foro de Java en Foros del Web. ¡Hola!. Vereis, necesito hacer una reflexión sobre una clase, y comprobar cuantos atributos de un tipo determinado tiene. A los atributos de ese tipo determinado ...
  #1 (permalink)  
Antiguo 22/01/2010, 15:46
 
Fecha de Ingreso: marzo-2006
Mensajes: 106
Antigüedad: 18 años, 1 mes
Puntos: 0
Dar valor a atributos con Reflection

¡Hola!.

Vereis, necesito hacer una reflexión sobre una clase, y comprobar cuantos atributos de un tipo determinado tiene. A los atributos de ese tipo determinado tengo que asignarle valores. ¿Se puede hacer esto con reflection?.

La traza sería más o menos así:

1. Obtener atributos de la clase (conseguido)
2. Recorrer todos los atributos (conseguido).
3. Reconocer que atributos son de un tipo determinado (conseguido).
4. Dar valor a esos atributos, en plan set(valorNuevo), o algo así.

¿Conoceis alguna forma?.
__________________
"El río más profundo siempre es el más silencioso"
  #2 (permalink)  
Antiguo 22/01/2010, 21:38
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Ubicación: por ahi!!!
Mensajes: 113
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Dar valor a atributos con Reflection

si que se puede. seria algo asi.

setearValores(String nombreParametro, String valorParametro, Class tipoParametro){
Class c = tipoParametro;
Class[] parameterTypes = new Class[] { c };
Method method;
String value = valorParametro;
Object[] arguments = new Object[] { objetoParametro(value, tipoParametro) };
method = object.getClass().getMethod(nombreParametro, parameterTypes);
method.invoke(object, arguments);
}
  #3 (permalink)  
Antiguo 24/01/2010, 12:29
 
Fecha de Ingreso: marzo-2006
Mensajes: 106
Antigüedad: 18 años, 1 mes
Puntos: 0
Respuesta: Dar valor a atributos con Reflection

Muchas gracais megajandro, me ha servido el código.

¡Un saludo!.
__________________
"El río más profundo siempre es el más silencioso"

Etiquetas: atributos, dar, reflection
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:42.