Sobes.tech
Junior

¿Qué es la encapsulación?

sobes.tech AI

Respuesta de la IA

La encapsulación es un mecanismo que permite ocultar el estado interno de un objeto y protegerlo de interferencias externas. Combina datos (campos) y métodos que operan con estos datos en un solo bloque: la clase.

En C#, la encapsulación se logra mediante modificadores de acceso (public, private, protected, internal, protected internal, private protected) y propiedades.

Ejemplo usando propiedades:

public class Persona
{
    private int _edad; // Campo privado

    public int Edad // Propiedad pública que proporciona acceso controlado al campo _edad
    {
        get { return _edad; }
        set
        {
            if (value >= 0) // Validación de datos
            {
                _edad = value;
            }
            else
            {
                // Se puede lanzar una excepción o realizar otra acción
                Console.WriteLine("La edad no puede ser negativa.");
            }
        }
    }

    public string Nombre { get; set; } // Propiedad autogenerada

    public void MostrarInfo()
    {
        Console.WriteLine($"Nombre: {Nombre}, Edad: {Edad}");
    }
}

Ventajas de la encapsulación:

  • Ocultación de la implementación: Los detalles internos del objeto están ocultos del código externo.
  • Control de acceso: El acceso a los datos se realiza a través de métodos o propiedades, permitiendo validar y aplicar lógica de negocio.
  • Flexibilidad: Los cambios en la implementación interna de la clase no afectan al código externo que usa su interfaz.
  • Mejora en el mantenimiento: El código se vuelve más estructurado y comprensible.