
- •Содержание
- •Тема 1. Введение в язык программирования c#
- •Первое знакомство с языком программирования с#
- •Языки программирования и компиляторы
- •Устройство компьютера
- •Процесс разработки программного обеспечения
- •Процесс исполнения программы на с#
- •Три различных типа ошибок
- •Знакомство с .Net
- •Синтаксические блоки
- •Тема 2. Синтаксис языка программирования с#, встроенные типы данных Алфавит языка программирования с#
- •Идентификаторы
- •Типы данных языка программирования с#
- •Встроенные простые типы языка c#
- •Совместимость целочисленных типов
- •Тема 3. Переменные, бинарные в языке программирования с# Присваивание значений переменным
- •Бинарные операции.
- •Операции сравнения и логические выражения
- •Алгоритм
- •Тема 4. Операторы ветвления Простой оператор if
- •Оператор if / else
- •Вложенные операторы if
- •Операторы if-else с несколькими ветвями
- •Оператор Switch
- •Рекомендации по использованию оператора switch
- •Область видимости переменных
- •Тема 5. Операторы итерации
- •Оператор цикла while
- •Оператор цикла do-while
- •Оператор цикла for
- •Оператор break
- •Оператор continue
- •Вложенные операторы итерации
- •Тема 6. Массивы Общие сведения
- •Перебор элементов массива Оператор for и foreach
- •????Методы для работы с массивами Многомерные массивы
- •?????Массивы неправильной формы Тема 7. Специальные типы
- •Работа со строками
- •Доступ к отдельным символам в строке.
- •Разработка алгоритма выборки слов
- •Некоторые методы для работы со строками.
- •Тема 8. Объектно-ориентированное программирование ооп основные понятия и предпосылки возникновения.
- •Концепции ооп
- •Убрать Сборки.
- •Элементы класса и применение методов
- •Тема 9. Методы Объявление методов.
- •Статические методы.
- •Конструкторы
- •Семестр 2. Визуальное программирование. Введение в проектирование графических интерфейсов
- •Формы в приложениях c# Работа с формами
- •Добавление формы к проекту
- •Выбор первоначального размещения формы
- •Изменение внешнего вида формы
- •Свойства BackColor, ForeColor и Text
- •Свойства Font, Cursor и BackGroundlmage
- •Прозрачность формы
- •Выбор рамки для формы
- •Кнопки изменения размеров формы
- •Добавление фонового изображения
- •Изменение формы курсора
- •Методы формы
- •Метод Show()
- •Метод ShowDialog()
- •Метод Activate()
- •Метод Hide()
- •Метод Close()
- •События формы.
- •События жизненного цикла формы
- •Событие Load
- •События Activated и Deactivated
- •Изменение текста надписи
- •Изменение шрифта
- •Цвет текста и фона
- •Рамка вокруг поля
- •Изменение курсора мыши
- •Выравнивание текста
- •Меню Добавление меню
- •Позиционирование элементов управления в форме
- •Привязка к сетке
- •Настройка взаимного расположения элементов формы
- •Выравнивание
- •Установка размеров
- •Установка промежутков между элементами
- •Шрифт на кнопке
- •Выравнивание текста
- •Стиль кнопки
- •Блокирование кнопки
- •Изображение на поверхности кнопки
- •Фоновое изображение для кнопки
- •Списки.
- •Список ListBox
- •Список CheckedListBox
- •Список DomainUpDown
- •Элемент управления NumericUpDown
- •Элемент управления TrackBar
- •Форма и клавиша табуляции
- •Установка порядка передачи фокуса при нажатии клавиши Tab
- •Свойство TabStop
- •Вложенные элементы управления и контейнеры
- •Применение элементов управления Group Box и Panel
- •Элемент управления TabControl
- •Стыковка и фиксация элементов управления
- •Свойство Anchor
- •Свойство Dock
- •Обработка событий
- •Проверка данных вводимых пользователем
- •Применение свойств элемента управления TextBox к проверке данных вводимых пользователем
- •Применение событий для проверки на уровне поля
- •События KeyDown и KeyUp
- •Событие KeyPress
- •Работа с фокусом ввода
- •Проверка на уровне формы
- •Оповещение пользователя об ошибках ввода
- •Компонент ErrorProvider
- •Отображение сообщений об ошибках
- •Тема Графика в c#.
- •Контекст отображения
- •Класс Graphics
- •Событие Paint
- •Тема Методы и свойства класса Graphics. Рисование геометрических фигур Рисование линии (DrawLine)
- •Набор линий (DrawLines)
- •Рисование прямоугольника(DrawRectangle )
- •Набор прямоугольников (DrawRectangles )
- •Рисование многоугольника (DrawPolygon)
- •Рисование эллипса(DrawEllipse )
- •Результат работы метода DrawEllipse Рисование сегмента эллипса (DrawArc)
- •Рисование замкнутого сегмента эллипса(DrawPie)
- •Рисование кривых Безье (DrawBezier и DrawBeziers )
- •Рисование канонических сплайнов (DrawCurve и DrawClosedCurve)
- •Рисование закрашенных фигур.
- •Тема. Инструменты для рисования
- •Инструмент для рисования перо (Pen) и его свойства
- •Инструмент для рисования кисть (Brush)
- •Кисть SolidBrush
Статические методы.
Известно, что исполнение программы в среде .NET начинается с вызова метода Main(). Среда исполнения не создает никаких объектов, поэтому Main() должен вызываться независимо от них. Объявление метода Main() статическим указывает, что он принадлежит классу. Тем самым, среда исполнения вызывает Main () непосредственно через имя класса.
Статический метод можно вызвать тремя способами:
-
Из объекта класса, которому он принадлежит. В этом случае префикс (имя класса или объекта) не нужен.
class myClass
{
public static void Average(…)
{
….
}
…Average()…
}
. I
-
Извне данного класса.
При этом существуют две возможности:
-
Если существует объект класса, где метод определен, вызов последнего состоит из имени объекта, операции уточнения и имени метода:
myClass A = new myClass();
…..
A.Average(…)
-
Независимо от существования объектов класса, а котором метод определен, он вызывается для класса посредством операции уточнения:
...myClass.Average(. ..)...
В вызоае метода предпочтительнее использовать имя класса (myClass.Average(...)), а не объекта A.Average(...) поскольку первый вариант четко указывает, что вызывается статический метод.
Конструкторы
Конструктор экземпляра класса представляет собой специальный метод, запускаемый по ключевому слову new. Он используется для инициализации переменных и других операций при создании объекта.
Синтаксис языка С# при создании объекта с ключевым словом new требует использовать скобки после имени класса, например:
Car myCar = new Car();
myCar является идентификатором конструктора. Стоит отметить, что идентификатор конструктора должен быть таким же, как идентификатор его класса. Скажем, конструктор класса Car также должен называться Car. Конструктор экземпляра не возвращает значения, поэтому тип возвращаемого значения не указывается (не используется даже ключевое слово void).
Оператор new Car() создает новый объект класса Car и возвращает ссылку на него, которая затем присваивается переменной myCar. Однако есть у этого оператора и другое назначение: он запускает конструктор экземпляра подобно тому, как осуществляется вызов обычного метода. Скобки после имени класса (в данном случае Car) могут включать список аргументов так же как в вызове метода. Он должен соответствовать списку формальных параметров конструктора. При наличии нескольких конструкторов экземпляра будет исполняться тот, чей список формальных параметров совпадает со списком аргументов.
Конструктор экземпляра с пустым списком формальных параметров называется конструктором экземпляра по умолчанию или конструктором экземпляра без аргументов.
Чтобы включить конструктор в класс, необходимо разместить его внутри блока определения класса вместе с другими элементами.
С конструктором экземпляра может применяться необязательный спецификатор доступности private или public. Он управляет доступностью конструктора так же, как переменных и методов экземпляра, однако имеются и различия
Аналогично тому, как в заголовке обычного метода, в объявлении конструктора экземпляра используются круглые скобки, включающие список формальных параметров. Значения аргументов передаются этим параметрам во время создания объекта с помощью ключевого слова new.
Пример