Абстрактные классы
Методы класса могут быть объявлены как абстрактные. Это означает, что в этом классе нет реализации этих методов. Абстрактные методы пишутся с модификатором abstract. Класс, в котором есть хотя бы один абстрактный метод, называется абстрактным (в таком классе могу быть и обычные методы). Нельзя создавать экземпляры абстрактного класса — такой класс может использоваться только в качестве базового класса для других классов. Для потомка такого класса есть две возможности — или он реализует все абстрактные методы базового класса (и в этом случае для такого класса-потомка мы сможем создавать его экземпляры), или реализует не все абстрактные методы базового класса (в этом случае он является тоже абстрактным классом, и единственная возможность его использования — это производить от него классы потомки). Рассмотрим пример:
abstract class Ferst
{
public abstract void Method1();
public abstract void Method2(string str);
}
class Second : Ferst
{
public override void Method1()
{
Console.WriteLine("Ferst Method");
}
public override void Method2(string str)
{
Console.WriteLine(str);
}
}
class Program
{
static void Main()
{
Second s = new Second();
s.Method1();
s.Method2("Hello");
Console.WriteLine();
}
}
В приведенном примере создан абстрактный класс Ferst, с двумя абстрактными методами. Класс Second наследуется от абстрактного класса Ferst и реализует определенные в абстрактном классе методы.
- Основные понятия ооп
- Модификаторы доступа
- Uml, назначение, типы диаграм.
- Диаграмма классов
- Деструкторы
- Свойства
- Индексаторы
- Этапы проектирования класса.
- Отношения между классами
- Вложенные классы
- Наследование
- Отношения и их графическое изображение на диаграмме классов
- Полиморфизм
- Абстрактные классы
- Классы без потомков
- Интерфейсы
- Изображение интерфейсов и абстрактных классов на диаграмме классов
- Вложенные классы
- Статические классы
- Делегаты
- Криптография и .Net
- Сетевое программирование в c#
- Создание простого клиент-серверного приложения используя сокеты
- Многопоточность
- Разработка библиотек dll