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);