- •Лекция №1-2 Тема: Объектно-ориентированный подход в программировании
- •Абстрагирование
- •Инкапсуляция
- •Наследование
- •Жизненный цикл
- •Атрибуты класса
- •Операции класса
- •Описание классов с помощью c#
- •Internal (внутренний) – компонент доступен только из классов, принадлежащих сборке, в которой определен данный класс (в том числе и самому классу).
- •Способы достижения инкапсуляции в c#
- •Конструкторы классов
Операции класса
В третьей сверху секции прямоугольника записываются операции или методы класса. Операция (operation) представляет собой некоторый сервис, предоставляемый каждым
экземпляром класса по определенному требованию. Совокупность операций характеризует функциональный аспект поведения класса. Каждой операции класса соответствует отдельная строка:
<квантор видимости><имя операции>(список параметров): <выражение типа возвращаемого значения>{строка-свойство}
Для квантора видимости и имени операции справедливо все то же что и для квантора видимости атрибута и имени атрибута.
Список параметров является перечнем разделенных запятой формальных параметров, каждый из которых может быть представлен в следующем виде:
<вид параметра><имя параметра>:<выражение типа>=<значение параметра по умолчанию>.
Здесь вид параметра - одно из ключевых слов in, out или inout со значением in по умолчанию. Имя параметра это идентификатор соответствующего формального параметра. Выражение типа является зависимой от конкретного языка программирования спецификацией типа возвращаемого значения. Вид значения по умолчанию зависит от конкретного языка программирования. То же касается и типа возвращаемого значения. Двоеточие и выражение типа возвращаемого значения могут быть опущены, если операция не возвращает никакого значения.
Операция с областью действия на весь класс показывается подчеркиванием имени и строки выражения типа. По умолчанию под областью операции понимается объект класса.
Операция, которая не может изменять состояние системы и, соответственно, не имеет никакого побочного эффекта, обозначается строкой-свойством "{запрос}" ("{query}"). В
противном случае, операция может изменять состояние системы, хотя нет никаких гарантий, что она будет это делать.
Описание классов с помощью c#
Как было сказано ранее, в программировании класс – это пользовательский тип данных.
Для определения классов в C# используется ключевое слово class. После него следует имя класса, которое должно быть уникальным в пределах пространства имен (позже). Требования к именам классов C# те же, что и к именам переменных в С/С++. Могут содержать латинские буквы (большие и малые), цифры и знак подчеркивания, не могут начинаться с цифры. Язык C# регистрозависимый. Для имен классов, переменных, параметров и т.д. не принято использовать венгерскую нотацию. Имя класс рекомендуется начинать с заглавной буквы, если имя состоит из нескольких частей, с большой буквы начинается каждая из них. MyMegaClass. Описание класса заключается в операторные скобки. Оно состоит из определения полей и описания методов. Каждый из этих компонентов (поле или метод) обязательно начинается с модификатора области видимости. Выделяют следующие модификаторы области видимости:
public (открытый) – компонент доступен отовсюду, в том числе из других классов и из других сборок;
protected (защищенный) – компонент доступен из класса, которому он принадлежит и из классов, производных от данного;
private (закрытый) – компонент доступен только из класса, которому он принадлежит;
