Главная страница
Навигация по странице:

  • Абстрактный класс

  • Инкапсуляция

  • Полиморфизм

  • Виртуальный метод

  • Переопределение метода

  • Лямбда-выражения

  • Абстрактный класс. Абстрактный класс это класс, в котором объявлен хотя бы один абстрактный элемент


    Скачать 14.95 Kb.
    НазваниеАбстрактный класс это класс, в котором объявлен хотя бы один абстрактный элемент
    АнкорАбстрактный класс
    Дата21.11.2020
    Размер14.95 Kb.
    Формат файлаdocx
    Имя файлаАбстрактный класс.docx
    ТипДокументы
    #152439

    Абстрактный класс – это класс, в котором объявлен хотя бы один абстрактный элемент (метод, свойство). Если в абстрактном классе объявлен абстрактный элемент, (метод, свойство) то перед именем такого класса ставится ключевое слово abstract. Если в производном классе нужно определить конкретную реализацию элемента (метода, свойства) абстрактного класса, то при объявлении элемента указывается ключевое слово override.

    Абстрактные члены классов не должны иметь модификатор private

    Метод override предоставляет новую реализацию члена, унаследованного от базового класса.

    Абстрактный класс предусматривает использование его как базового для других унаследованных классов. В свою очередь, унаследованный класс должен реализовать все абстрактные элементы базового абстрактного класса. Если, по какой-то причине в унаследованном классе не нужно реализовывать элементы абстрактного класса, то такой класс также нужно объявить как абстрактный.

    Инкапсуляция: включение в класс объектов другого класса, вопросы доступа к ним, их видимости.

    • public: неограниченный доступ (доступен из любого места в коде, из других программ и сборок.)

    • protected: доступен в текущем классе или в производных классах

    • private: закрытый из кода в том же классе или контексте.

    • internal: как public но недоступен для других программ и сборок

    • protected internal: доступ из текущей сборки и из производных классов.

    • private protected: доступен из любого места в текущем классе или в производных классах, которые определены в той же сборке.

    Полиморфизм: — это свойство одних и тех же объектов и методов принимать разные формы.

    Наследование — если какой-то класс уже имеет какую-то логику и функции, нам не нужно переписывать всё это заново для создания нового класса, мы можем просто включить старый класс в новый, целиком.

    Виртуальный метод – это метод, который МОЖЕТ быть переопределен в классе-наследнике. Такой метод может иметь стандартную реализацию в базовом классе.

    Абстрактный метод – это метод, который ДОЛЖЕН быть реализован в классе-наследнике. При этом, абстрактный метод не может иметь своей реализации в базовом классе (тело пустое), в отличии от виртуального.

    Переопределение метода – это изменение реализации метода, установленного как виртуальный (в классе наследнике метод будет работать отлично от базового класса).

    Лямбда-выражения простая запись анонимных методов. позволяют создать методы, которые могут возвращать некоторое значение и которые можно передать в качестве параметров в другие методы.

    Делегат это объект указывающий на функцию


    написать администратору сайта