Clases abstractas y selladas
Clases y Métodos Abstractos
- Clases Abstractas:
- Una clase abstracta es una clase que no puede ser instanciada directamente. Sirve como una plantilla o base para otras clases.
- Se declara con la palabra clave
abstract
. - Puede contener métodos abstractos (sin implementación) y métodos concretos (con implementación).
- Las clases derivadas deben proporcionar implementaciones para los métodos abstractos.
- Ejemplo:
public abstract class Vehiculo { public string Marca { get; set; } public abstract void Arrancar(); } public class Coche : Vehiculo { public override void Arrancar() { Console.WriteLine("El coche está arrancando."); } }
- Métodos Abstractos:
- Un método abstracto no tiene implementación en la clase base.
- Se declara con la palabra clave
abstract
. - Las clases derivadas deben proporcionar una implementación concreta.
- Ejemplo:
public abstract class Figura { public abstract double CalcularArea(); } public class Circulo : Figura { public override double CalcularArea() { // Implementación específica para el círculo. } }
Clases Selladas
- Clases Selladas:
- Una clase sellada (o
sealed
) no puede ser heredada por otras clases. - Se declara con la palabra clave
sealed
. - No puede ser una clase abstracta.
- Útil cuando deseas evitar que otras clases extiendan o modifiquen una clase específica.
- Ejemplo:
public sealed class Configuracion { // Propiedades y métodos de configuración. }
- Una clase sellada (o
En resumen:
- Las clases abstractas proporcionan una base común para clases derivadas y pueden contener métodos abstractos.
- Las clases selladas evitan la herencia y son útiles para proteger implementaciones específicas.
Recuerda que estos conceptos son fundamentales en la programación orientada a objetos en C#.