Cita:
Iniciado por Gaboto83 enriqueplace, justamente el comportamiento coherente sería el de la versión 5.2, no el de la 5.3.
fijate que en la 5.2 devuelve TRUE (lo correcto) y en 5.3 FALSE.
Mmm... me confundí entonces?
dame un rato que reviso toda la discusión nuevamente (sorry, nunca más contesto apurado)
Cita: En mi caso concreto es una parte del programa que tiene que guardar objetos en la base de datos, entonces necesita utilizar este tipo de cosas para conocer la estructura interna del objeto y luego guardarlo en una tabla de base de datos por ejemplo.
Obviamente la forma de persistir un objeto en una base de datos va a estar acoplada a su estructura interna, por lo que no hay forma de no "romper" el encapsulamiento.
Las facilidades reflexivas del lenguaje están buenas siempre y cuando se utilicen cuando corresponda.
Ok, en estos casos particulares, estoy de acuerdo que los necesitas, pero no así en las situaciones habituales de trabajar en el "dominio" de un sistema tradicional.