Що таке abstract в C#?
Ключове слово abstract в C# застосовується до класів і членів класу (методів, властивостей тощо), щоб вказати, що вони містять лише сигнатури (без реалізації) і повинні бути реалізовані у похідних класи. Абстрактні класи надають загальний інтерфейс, а абстрактні члени класу залишають деталі реалізації на розсуд наступних класів. Ось основні моменти та приклад використання abstract:
Основні моменти:
- Абстрактні класи: Клас, оголошений як
abstract, не може бути створений безпосередньо. Він надає спільний інтерфейс для похідних класів, але сам не надає реалізації. - Абстрактні члени класу: Методи, властивості, індексатори та події можуть бути оголошені з ключовим словом
abstract, вказуючи, що вони мають бути реалізовані у похідних класах. - Реалізація у похідних класах: Абстрактні члени класу повинні бути реалізовані в кожному похідному класі, інакше компілятор видасть помилку.
// Приклад абстрактного класу з абстрактним методом
public abstract class Shape
{
// Абстрактний метод без реалізації
public abstract void Draw();
// Звичайний метод із реалізацією
public void DisplayArea()
{
Console.WriteLine("Calculating area...");
}
}
// Приклад похідного класу, що реалізує абстрактний метод
public class Circle : Shape
{
// Реалізація абстрактного методу
public override void Draw()
{
Console.WriteLine("Drawing a circle");
}
}
Коментарі