- •5. Обзор встроенных типов данных в с#. Применение встроенной функциональности типов данных.
- •6. Пространство имён System. Класс System.Math
- •7.Операции ввода-вывода. Формат вывода.
- •8. Арифметические операции. Операции отношений и логические операции. Операторы и выражения в c# .
- •Операторы
- •9.Массивы в с#. Одномерные массивы.
- •10.Класс System.Random, применение его методов для создания массива случайных чисел. Класс System.Array, использование его методов и свойства Length.
- •11. Двумерныемассивы в c#. Виды двумерных массивов и способы их определения. Способы создания двумерных массивов. Вывод матриц на экран по строкам.
- •12. Структуры в c#. Создание структур. Массивы структур.
- •13.Объект и его свойства. Характеристики ооп.
- •14.Определение классов в c#. Члены класса. Форма определения класса.
- •15.Конструкторы. Параметризованные конструкторы. Создание экземпляра класса. Использование оператора new.
- •16. Типы значений и ссылочные типы. Динамическое использование памяти: стеки и кучи. Упаковка и распаковка.
- •18. Определение методов класса. Модификаторы доступа к методам класса. Параметры методов класса, передача аргументов.
- •19. Модификаторы ref, out, params параметров методов.
- •20.Возвращение методами объектов класса. Возвращение методами массивов Возвращение методами объектов класса
- •Возвращение методами массивов
- •21. Общие (статические) члены класса. Доступ к общим членам. Ограничения на static-методы.
- •22.Цикл «Жизни». Область видимости и время существования переменных.
- •23. Преобразование и приведение типов данных.
13.Объект и его свойства. Характеристики ооп.
В середине 80-х годов XXв. в программировании возникло новое направление, основанное на понятии объекта. ООП предназначено для написания сложных систем. Возникла потребность разделить программы не просто на процедуры, а на полностью независимые и самостоятельные классы процедур, которые сами отвечают за свое внутреннее состояние и внешнее поведение. Их отличительная черта состоит в том, что базируясь на эти классы, можно строить совершенно различные приложения.
Понятие объекта. Объект– это некая отдельная сущность, выделяющаяся среди других сущностей особыми свойствами, поведением, взаимодействием с себе подобными объектами приложения.
Реальные объекты окружающего нас мира обладают тремя базовыми характеристиками:
1.Они имеют набор свойств. Совокупность свойств объекта определяет его состояние. Как правило, свойства – это набор переменных и констант, в которых хранятся значения, определяющие параметры объекта.
2.Они способны разными методами изменять эти свойства. Метод–процедура, которая реализует возможные с объектом действия.
3.Способны реагировать на события, возникающие внутри самого объекта. События – это аналог сообщений, которые получают и отправляют объекты.
Объекты, имеющие общие свойства, методы обработки данных, объединяются в классы. Класс – это новый тип данных, основанный на единой структуре объекта. При создании класса в современных средах программирования задаются 2 блока: 1.Данные - описываются все структуры данных, с кот б работать данный класс, а также создаются экземпляры объектов. 2.Методы- описываются свойства и методы обработки этих данных, еще говорят, описывается поведение данного класса. Классу присваивают имя.
Класс характеризуется следующими основополагающими понятиями ООП.
1.Наследование. Позволяет создавать новые классы на основе имеющегося класса, с наследованием всех его свойств и методов и добавлением собственных. Класс, не имеющий предшественника, называется базовым. Если первый называется базовым, то второй – производным классом (или подклассом).
Иерархия. Производный класс сам может служить базовым. От одного базового класса можно образовывать несколько производных. Знание иерархии классов важно для понимания процессов выдачи ответов на сообщение. При получении сообщения объект ищет в протоколе методов экземпляра своего класса метод, совпадающий с именем сообщения. Если такого метода нет, он ищется в списке методов базового класса и т.д. когда метод обнаружен, он выполняется и выдается ответ. Если нигде нет, вплоть до корня дерева, метод не обнаружен, выдается сообщение об ошибке.
2. Полиморфизм. Объекты разных классов могут использовать одноименные методы, работающие по-разному для разных объектов. Или, другими словами, различные объекты выполняют одно и то же действие по-своему. В связи с этим в большинстве случаев методы базового класса у производных классов приходится переопределять.
Например: метод «Идти» базового класса «Животное» нужно переопределить для класса «Кунгуру».
Все переопределенные методы по названию должны совпадать с методом базового класса. Компилятор распознает какой конкретно метод надо ипользовать.
3. Инкапсуляция. Скрытие сложного механизма действия объекта, т.е некоторые поля или методы класса объявляются словом private и тогда они доступны лишь внутри класса.