En las clases de C# podemos distinguir 3 tipos de elementos.
- Campos: Se refiere a lo que en C++ llamamos atributos de la clase, es decir, un campo es un dato común a todos los objetos de una determinada clase.
EJEMPLO:
class Persona { string Nombre; // Campo de cada objeto Persona que almacena su nombre int Edad; // Campo de cada objeto Persona que almacena su edad string NIF; // Campo de cada objeto Persona que almacena su NIF }
- Métodos: Son "funciones" que nos permiten realizar determinadas cosas relacionadas con la clase.
EJEMPLO:
class Persona { //CAMPOS CLASE PERSON string Nombre; // Campo de cada objeto Persona que almacena su nombre int Edad; // Campo de cada objeto Persona que almacena su edad string NIF; // Campo de cada objeto Persona que almacena su NIF //ESTE ES EL MÉTODO CUMPLEAÑOS void Cumpleaños() // Incrementa en uno de la edad del objeto Persona { Edad++; } }
- Propiedades: Una propiedad es una mezcla entre el concepto de campo y el concepto de método.
Se parecen a un campo porque se usan como un campo al que se le puede asignar o acceder a un valor.
Se parecen a un método porque pueden ejecutar código como por ejemplo comprobaciones y cálculos.
Aunque se asemejen a un método, el acceso a las propiedades no utiliza un () al final, es decir, por ejemplo, tenemos un objeto Datetime d y queremos hacer uso de la propiedad Year de la clase para mostrar el año por pantalla pues haríamos: Console.WriteLine(d.Year)
A continuación un ejemplo mas elaborado haciendo uso de las propiedades Year, Month y Day de la clase DateTime.
EJEMPLO:
static void Main(string[] args) { DateTime d = new DateTime(2011, 10, 18, 13, 30, 0); Console.WriteLine("Año: {0}", d.Year); Console.WriteLine("Mes: {0}", d.Month); Console.WriteLine("Dia: {0}", d.Day); Console.ReadLine(); }
Más adelante dedicaré un post entero para profundizar en el uso de las propiedades.
que significa el {0} en el codigo Console.WriteLine("Año: {0}", d.Year);