- •Предисловие
- •1 Среда визуального программирования visual studio.Net
- •1.1 Введение в объектно - ориентированное программирование
- •1.2 Понятие о событийном управлении Windows
- •1.3 Основные окна среды Visual Studio.Net
- •1.4 Основные структурные элементы разработки проекта c#
- •1.5 Пример первой учебной программы
- •2.1 Технология визуального проектирования форм
- •1.6 Вопросы для самопроверки
- •2 Элементы управления
- •2.2 Элементы управления панели Toolbox
- •2.3 Пример использования элементов управления
- •2.4 Вопросы для самопроверки
- •3 Графический интерфейс языка c#
- •3.1 Пространство имен System.Drawing
- •3.2 Класс Graphics
- •3.3 Пример программной реализации
- •3.4 Вопросы для самопроверки
- •4 Использование меню в приложении
- •4.1 Меню программы
- •4.2 Создание инструментальной панели приложения
- •4.3.Вопросы для самопроверки
- •5 Использование диалоговых меню
- •5.1 Обработчики событий для работы с матрицей
- •5.2 Обработчик событий для открытия файла
- •5.3 Обработчик событий для записи в файл
- •5.4 Обработчик событий для работы с текстом
- •5.5 Вопросы для самопроверки
- •6 Многооконные приложения
- •6.1 Создание «кнопочной» главной формы
- •6.2 Добавление новых форм приложения
- •6.3 Обработчики событий главной формы
- •6.4 Табличная форма представления и редактирования значений
- •6.5 Графическая форма представления прямоугольников
- •6.6 Вопросы для самопроверки
- •7. Понятие класса
- •7.1 Понятие класса
- •7.2 Состав класса
- •7.3 Методы класса
- •7.4 Структура объекта
- •7.5 Пример учебной программы
- •7.6 Доступ к полям
- •7.7 Вопросы для самопроверки
- •1 Понятие класса?
- •8 Элементы классов
- •8.1 Конструкторы
- •8.2 Деструкторы
- •8.3 Свойства
- •8.4 Параметр по ссылке this
- •8.5 События класса
- •8.6 Перегрузка операций класса
- •8.7 Вопросы для самопроверки
- •9 Принципы ооп
- •9.1 Понятие инкапсуляции
- •9.2 Понятие наследования
- •9.3 Вопросы для самопроверки
- •10 Принцип полиморфизма
- •10.1 Понятие полиморфизма
- •10.2 Пример статического наследования методов
- •10.3 Пример динамического наследования методов
- •10.4 Вопросы для самопроверки
- •11 Использование интерфейсов
- •11.1 Понятие интерфейса
- •11.2 Синтаксис интерфейса
- •11.3 Использование стандартного интерфейса iEnumerable
- •11.4 Вопросы для самопроверки
- •12 Композиция и коллекция классов
- •12.1 Понятие композиции и коллекции класса
- •12.2 Пример использования композиции и коллекции класса
- •12.3 Некоторые коллекции Framework
- •12.4 Коллекция ArrayList
- •12.5 Вопросы для самопроверки
- •13 Делегаты
- •13.1 Понятие делегата
- •13.2 Описание делегата
- •13.3 Пример использования делегата
- •13.4 Совместимость делегатов
- •13.5 Методы базовых классов делегатов
- •13.6 Вопросы для самопроверки
- •14 События
- •14.1 Понятие события
- •14.2 Некоторые часто используемые события среды Visual Studio.Net
- •14.3 Пример использования стандартных событий классов
- •14.4 Нестандартные события классов
- •14.5 Вопросы для самопроверки
- •Приложение а Ответы на вопросы для самопроверки
- •1 Понятие класса?
- •Предметный указатель
- •Список литературы
7.2 Состав класса
Как мы уже отмечали, тело класса может содержать данные, методы их обработки и события – все эти составляющие часто называют элементами класса.
Рассмотрим основные элементы класса и их назначение:
– константы класса хранят неизменяемые значения;
– поля класса (типы и имена переменных класса);
– методы класса это поименованный фрагмент кода программы, предназначенный для работы с данными класса;
– свойства класса это совокупность методов, позволяющих классу обмениваться (читать или записывать) значениями полей класса с другими классами программы;
– конструкторы класса это специальные методы класса, которые предназначены для создания объектов класса и присваивания начальных значений полям класса;
– деструкторы класса это специальные методы, определяющие порядок действий при освобождении ресурсов, выделенных объекту;
– события класса это специальные методы, позволяющие классу реагировать на действия пользователя или на определенные изменения в программе;
– типы это типы данных, внутренние по отношению к классу. Например, перечисления, структуры, классы, делегаты, интерфейсы.
– индексаторы это средство доступа к элементам данных класса (обычно массивам) по их порядковому номеру;
–операции это специальные действия с объектами класса с помощью знаков операций.
Данными класса могут быть константы или переменные (поля) класса. При объявлении данных в классе обычно указывается спецификатор доступа к нему, например,
private int a;
Общий формат записи данных класса при их объявлении имеет следующий вид:
[ атрибуты ] [ спецификаторы ]
[ const ] тип имя [= начальное_значение].
Обычно данные класса «закрывают для программы» – используют спецификатор private. Если перед данными используются спецификатор public, то они являются доступными «программе».
По умолчанию, как для данных, так и для методов применяется спецификатор private.
Объект – это переменная типа класс и при его создании в памяти компьютера выделяется отдельная область, в которой хранятся значения элементов класса.
Однако в классе могут присутствовать статические элементы класса, которые существуют в единственном экземпляре для всех объектов класса. Часто статические данные называют данными класса, а остальные – данными экземпляра класса, т.е. объекта.
Доступ к некоторым элементам класса (методам) и полям возможен только после создания объекта. Если доступ разрешен, то для обращения к ним используется оператор «точка», например, для некоторого объекта stud доступ к полю name возможен следующим образом stud.name = “Иванов”;.
Аналогичным образом для объекта можно вызывать метод его класса, например, stud.poisk(a);, где poisk(int a) метод класса, для которого создан объект stud.
Из синтаксиса следует, что классы могут быть вложенными. Такая ситуация довольно редкая. Ее стоит использовать, когда некоторый класс носит вспомогательный характер, разрабатывается в интересах другого класса, и есть полная уверенность, что внутренний класс никому не понадобится, кроме класса, в который он вложен и, возможно, его потомков.
Внутренние классы обычно имеют модификатор доступа private или protected.
