💀
Второй курс РПО
C#
C#
  • Типы данных и переменные
  • Массивы и списки
  • Управляющие конструкции
  • Методы
  • Классы и объекты
  • Инкапсуляция, наследование и полиморфизм
  • Интерфейсы
  • Обработка исключений
  • Работа с файлами
  • Делегаты и события
  • Краткие определения основных понятий
  • Вопросы с контрольной
  • Тестовые вопросы по темам
Powered by GitBook
On this page
  • Создание интерфейса
  • Полезные советы

Интерфейсы

Интерфейс определяет контракт, который должен реализовать класс. Это набор методов и свойств без реализации.

Создание интерфейса

Интерфейс объявляется с ключевым словом interface. Имена обычно начинаются с I.

using static System.Console;

interface IAnimal
{
    void MakeSound(); // Метод без реализации
    string Name { get; set; } // Свойство
}

class Dog : IAnimal
{
    public string Name { get; set; }

    public void MakeSound()
    {
        WriteLine("Гав!");
    }
}

class Program
{
    static void Main(string[] args)
    {
        IAnimal dog = new Dog();
        dog.Name = "Шарик";
        dog.MakeSound(); // Вывод: Гав!
        WriteLine(dog.Name); // Вывод: Шарик
    }
}

Отличия от классов

  • Интерфейсы не содержат реализацию, только сигнатуры.

  • Класс может реализовать несколько интерфейсов, но наследовать только один класс.

  • Интерфейсы не содержат полей, только свойства и методы.

Полезные советы

  • Используйте интерфейсы для определения общего поведения разных классов.

  • Интерфейсы полезны для тестирования и внедрения зависимостей.

  • Называйте интерфейсы с префиксом I для ясности.

PreviousИнкапсуляция, наследование и полиморфизмNextОбработка исключений

Last updated 7 days ago