Junior
122
questionbank
Что такое абстракция?
Ответ от нейросети
sobes.tech AI
Абстракция — один из принципов объектно-ориентированного программирования, позволяющий выделить существенные характеристики объекта, игнорируя несущественные детали. Она упрощает представление реальности в коде, сосредотачиваясь на "что" делает объект, а не на "как" он это делает.
В C# абстракция реализуется с помощью:
- Абстрактных классов: Могут содержать абстрактные методы (без реализации) и обычные методы. Нельзя создать экземпляр абстрактного класса напрямую.
public abstract class Shape // Абстрактный класс { public abstract double Area(); // Абстрактный метод public void DisplayInfo() // Обычный метод { Console.WriteLine("Это фигура."); } } - Интерфейсов: Определяют контракт - набор методов и свойств, которыми должен обладать класс, реализующий интерфейс. Не содержат полей (до C# 8, где появились default interface methods) и могут содержать только сигнатуры методов.
public interface IDrawable // Интерфейс { void Draw(); // Метод без реализации }
Классы, наследующие абстрактные классы или реализующие интерфейсы, предоставляют конкретную реализацию абстрактных или интерфейсных членов.