Средний
6 уроков
Курс
Основы C#
В этом видеокурсе вы ознакомитесь с основами C#

#3 — Наследование и Инкапсуляция

Привет! Сегодня мы разберемся с принципом наследования и инкапсуляции на примере животных. Далее будут описаны основные проблемы и уточнения, которые важны для понимания видеоурока.

Наследование классов cat и dog

Напомним, что механизм наследования позволяет получить функционал дочернего класса из его базового. Итак, нам нужно описать два вида животных – кошку и собаку. Для этого мы сначала создадим 3 класса (Animal, cat, dog), а затем наследуем классы cat и dog от класса Animal. Чтобы наследовать один класс от другого, используется простая конструкция:

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

Инкапсуляция, или доступ к полю name

Теперь перейдем плавно к инкапсуляции. Создадим в Animal поле — строку name. Теперь, если мы захотим обратиться из дочернего класса (cat, dog) к полю name, у нас отобразится ошибка доступа, так как это поле является по умолчанию защищенным (private). Модификатор доступа private позволяет обращаться к элементу только из того класса, в котором он был объявлен.

То же самое касается и функций-членов класса. Чтобы сделать поле защищенным, но дать возможность обращаться к нему дочерним классам, используется слово protected.

Далее приведен список всех возможных модификаторов доступа:

  • • public – полностью открытый модификатор доступа (доступ в любом месте проекта);
  • • internal – частично закрытый модификатор (доступ только внутри данной программы);
  • • protected – частично открытый модификатор (доступ только в том классе, где были объявлены объекты и в дочерних классах);
  • • private – закрытый модификатор (доступ только в классе, где были объявлены объекты).

Класс Program

Класс Program с функцией Main запускается по старту программы. Здесь мы будем прописывать наш вызов функции debug, чтобы вывести в консоль имена животных. Но для начала нам необходимо создать экземпляры классов, то есть выделить память под объекты класса. Общая инструкция объявления объекта класса:

Затем, чтобы вызвать функцию класса, используйте следующую инструкцию:

Запечатанные классы

Запечатанные классы – это классы, от которых нельзя ничего наследовать. Чтобы объявить запечатанный класс, используется инструкция sealed. Данная инструкция применима как для классов, так и для членов. В отличие от модификатора private, который разрешает наследовать параметр, но не дает доступ к нему, sealed позволяет избежать не нужного наследования. В этом и заключается его основная особенность.

На этом уроке мы разобрались на примере с принципами наследования и инкапсуляции в С#. Код проектаConsoleApplication2 находится под описанием к этому видеоуроку. До скорой встречи!

Приятного всем просмотра! Учитесь с удовольствием! Всегда ваш LoftBlog!

Материалы к уроку:
Делись:

Оставь комментарий!

Добавить комментарий

Рекомендуемые курсы