Clases

01/04/2010 - 20:24 por CG | Informe spam
Visual C# 2008

Hola a todos

En la implementación de Clases surge una duda. Sin desmerecer el hecho de
que Los Campos no son suceptibles de validar los datos asignados y en cambio
las Propiedades propiamente dichas sí, ¿Cuál es la diferencia entre los
Campos y las Propiedades? ¿En qué casos utilizar uno u otro?

Desde ya Muchísimas Gracias

Carlos García
 

Leer las respuestas

#1 Alberto Poblacion
01/04/2010 - 20:33 | Informe spam
"CG" wrote in message
news:
En la implementación de Clases surge una duda. Sin desmerecer el hecho de
que Los Campos no son suceptibles de validar los datos asignados y en
cambio
las Propiedades propiamente dichas sí, ¿Cuál es la diferencia entre los
Campos y las Propiedades? ¿En qué casos utilizar uno u otro?



Una diferencia más es que los campos tienen dirección y pueden pasarse
como argumentos por referencia, mientras que las propiedes no pueden. Aunque
la sintaxis de llamada es igual para campos que para propiedades, por
Reflexion pueden distinguirse, ya que los primeros se obtienen con GetFields
y las segundas con GetProperties. Esto afecta a ciertos controles que
muestran el contenido de objetos, por ejemplo, si asignas un array de
objetos de una clase al DataSource de un Grid, solo salen en las columnas
del Grid las propiedades, pero no los campos.

La recomendación es usar propiedades para representar el estado de una
clase que sea públicamente accesible (es decir, no usar campos públicos),
mientras que el estado privado se puede guardar en campos (o usar
propiedades privadas si se requiere controlar algo en el gety el set).

Preguntas similares