Контрольные вопросы: 1. Объясните: конструктор класса и деструктор.
2. Опишите ввод данных в программировании
3. Объясните: поля и константы
4. Объяснение: методы класса.
5. Опишите введение в машинное обучение.
Лекция 11. среда программирования Visual C#. Объектно-ориентированное программирование. Объекты и классы. Инкапсуляция свойств объектов.
Цель лекции: формирование у студентов умений демонстрировать свои представления среда программирования Visual C#. Объектно-ориентированное программирование. Объекты и классы. Инкапсуляция свойств объектов.
В результате освоения данной лекции студенты приобретают следующие способности:
Показать понимание объектно-ориентированное программирование. Объекты и классы. Инкапсуляция свойств объектов.
Метод — это функциональный элемент именованного класса для работы с методами и данными класса. Методы определяют набор действий, которые можно применить к классу (определяют, как работает класс). Метод определяется только один раз, его можно вызывать несколько раз для разных объектов класса.
Общая нотация для методов класса имеет следующий формат:
[ атрибуты ] [ спецификаторы ] тип метода имя метода ( [ параметры ] )
{тело метода}
Например,
static void Main(string[] args)
{ }
Наиболее распространенными спецификаторами являются private, public и static.
Любой метод класса, объявленный с помощью спецификатора Private, доступен только для методов этого класса.
Спецификатор Public позволяет использовать метод в любой части программы.
Используя спецификатор Static, вы можете вызывать метод на «уровне класса», не создавая объект класса. Это очень важно, потому что в этом методе мы будем много использовать статические методы.
Без создания объекта класса конструктор класса используется как доступный метод в программе.
Доступ к другим методам возможен только после создания объекта класса.
Если спецификатор не указан, этот метод класса будет иметь спецификатор private.
Тип метода может быть любым, определенным в программе, либо стандартным типом C#, либо void - бестиповым. Например:
int kol(int a) { … }
public double sym(out float r) { … }
public void poisk(ref float s) { … }
public int funkcij( int a, out int b, params int[] c) { … }
Если указан тип метода (отличный от типа void), то последним оператором тела метода является оператор возврата, возвращающий результат работы метода. При этом метод должен быть присвоен переменной или использоваться как выражение в операторах. Такие методы называются функциями.
Если перед методом указан тип void, то метод не должен возвращать результат с помощью оператора возврата (в теле метода нет оператора возврата). Обычно этот метод называется процедурой, его нужно присвоить переменной, а также его можно записать как процедуру — отдельную программу. Имя метода — это идентификатор, присвоенный программистом. Значение имени метода (имени) должно быть связано с работой метода, например, sym, max, poisk и т.д.
Параметры метода (формальные параметры) используются для обмена данными между методом и программой.
Обычно параметры метода называются инструментами «настройки» метода.
В C# методы имеют следующие параметры:
— параметры, определяющие значения (входные параметры, то есть полученные методом);
- выходные параметры (обозначаются функцией word out);
– эталонные параметры (обозначаемые функциональным словом ref);
– параметр массива (задается ключевым словом params).
В параметрах, определяющих значения, нет ключевого слова функции.
Параметры методов класса разделяются запятыми. Параметр массива в методе должен быть первым и последним в списке параметров.
Если метод объявляет параметры, определяющие значения, это указывает на то, что метод копирует некоторые переменные. Метод может изменить значение этих копий, но их оригинал (в программе) останется неизменным. После завершения работы метода параметры, определяющие значения, удаляются из памяти компьютера.
Выходные параметры метода предназначены для передачи результатов в программу. Выходным параметрам в теле метода необходимо присвоить некоторые значения, иначе при компиляции программы появится сообщение об ошибке.
Если в методе объявлены ссылочные параметры, то метод берет адрес соответствующих переменных и может использовать их по своему алгоритму (записывать и читать новые значения).
Параметр массива, объявленный в методе, предназначен для работы с любым количеством реальных переменных. Кроме того, формальный параметр, следующий за функцией params, будет сопоставляться с массивом данных любого размера.
Таким образом, метод может получать необходимые данные через свои параметры (параметры-значения и ссылочные параметры) или возвращать результаты своей работы (выходные параметры и ссылочные параметры).
Тело метода содержит фрагмент кода программы, выполняющий некоторый алгоритм. При этом метод используется как модель действий с формальными параметрами. В программе вместо формальных параметров должны использоваться реальные переменные - для реальных переменных используются реальные параметры и шаблон поведения метода.