Propiedades y métodos
Las propiedades y los métodos son conceptos fundamentales en C# y en la programación orientada a objetos (POO). A continuación, te explico en detalle qué son las propiedades y los métodos, junto con ejemplos:
Propiedades:
- Las propiedades son miembros de una clase que permiten acceder y manipular datos dentro de un objeto.
- Proporcionan una interfaz pública para acceder a campos privados (variables) de la clase.
- Las propiedades combinan aspectos de los campos y los métodos:
- Para el usuario de un objeto, una propiedad se comporta como un campo.
- Para el implementador de una clase, una propiedad es uno o dos bloques de código que representan un descriptor de acceso get o un descriptor de acceso set.
- Los descriptores de acceso get y set se ejecutan cuando se lee o asigna un valor a la propiedad, respectivamente.
- Una propiedad sin un descriptor de acceso set se considera de solo lectura.
- Una propiedad sin un descriptor de acceso get se considera de solo escritura.
- Una propiedad que tiene ambos descriptores de acceso es de lectura y escritura.
- En C# 9 y versiones posteriores, puedes usar un descriptor de acceso init en lugar de set para que la propiedad sea de solo lectura.
- A diferencia de los campos, las propiedades no se clasifican como variables. Por lo tanto, no puedes pasar una propiedad como un parámetro ref o out.
- Las propiedades tienen muchos usos:
- Validar datos antes de permitir un cambio.
- Exponer claramente datos en una clase donde esos datos se recuperan de otros orígenes, como una base de datos.
- Realizar una acción cuando los datos se cambian, como generar un evento o cambiar el valor de otros campos.
Ejemplo de propiedad en C#:
Supongamos que queremos crear una clase Persona
con una propiedad Nombre
:
public class Persona
{
private string _nombre; // Campo privado para almacenar el valor de la propiedad
public string Nombre
{
get => _nombre; // Descriptor de acceso get (lectura)
set
{
// Descriptor de acceso set (escritura)
if (!string.IsNullOrEmpty(value))
{
_nombre = value;
}
}
}
}
En este ejemplo:
Nombre
es una propiedad que permite leer y escribir el nombre de una persona.- El descriptor de acceso get devuelve el valor actual del campo privado
_nombre
. - El descriptor de acceso set valida que el valor asignado no sea nulo o vacío antes de actualizar el campo.
Métodos:
- Los métodos son bloques de código que realizan una acción específica.
- Representan el comportamiento de una clase y se utilizan para ejecutar operaciones de forma ordenada.
- Los métodos pueden recibir parámetros (datos de entrada) y devolver valores (datos de salida).
- Ejemplos de métodos en C#:
- Calcular el precio total de una compra.
- Validar una contraseña.
- Realizar una operación matemática.
Ejemplo de método en C#:
Supongamos que queremos crear una clase Calculadora
con un método para sumar dos números:
public class Calculadora
{
public int Sumar(int a, int b)
{
return a + b;
}
}
En este ejemplo:
Sumar
es un método que toma dos números como parámetros y devuelve su suma.
Recuerda que las propiedades y los métodos son esenciales en cualquier aplicación, y proporcionan una forma poderosa de modelar el comportamiento y los datos en tus clases.