ИГА. Понятие базы данных
![]()
|
Свойства и методы в ООП.Существует два свойства доступа: 1 private – соответствующий элемент может использоваться функциями данного класса. 2 public - доступен в других частях программы. Методы – обычные подпрограммы (процедуры и ф-ции) объявленные внутри объекта. Объявляются и записываются описываются они также как и обычные подпрограммы в модулях. Отличаем здесь является то, что при описании метода исполнительной части у его имени следует указать квалификатор, в качестве которого выступает имя - типа-объекта. Виртуальный метод. При описании тех или иных схожих объектов приходится писать методы, так же схожи друг с другом и отличается только отдельными деталями. Например, методы объектов типа-строка и типа-текст предназначенные для создания соответствующего элемента и включения, его в структуру. Выполняют одинаковый набор действий выделяют место в динамической области памяти и размещают там нужный объект, а затем устанавливают соответствующие связи этого объекта в структуре текста. События и методы в ООП.Событие в объектно-ориентированном программировании — это сообщение, которое возникает в различных точках исполняемого кода при выполнении определённых условий. События предназначены для того, чтобы иметь возможность предусмотреть реакцию программного обеспечения.[1] Для решения поставленной задачи создаются обработчики событий: как только программа попадает в заданное состояние, происходит событие, посылается сообщение, а обработчик перехватывает это сообщение. В общем случае в обработчик не передаётся ничего, либо передаётся ссылка на объект, инициировавший (породивший) обрабатываемое событие. В особых случаях в обработчик передаются значения некоторых переменных или ссылки на какие-то другие объекты, чтобы обработка данного события могла учесть контекст возникновения события. Самое простое событие — это событие, сообщающее о начале или о завершении некоторой процедуры. Событие, по сути, сообщает об изменении состояния некоторого объекта. Наиболее наглядно события представлены в пользовательском интерфейсе, когда каждое действие пользователя порождает цепочку событий, которые, затем обрабатываются в приложении. В объектно-ориентированном анализе для описания динамического поведения объектов принято использовать модель состояний.[2] Событие — это переход объекта из одного состояния в другое. Взаимодействие объектов также осуществляется при помощи событий: изменение состояния одного объекта приводит к изменению состояния другого объекта, а событие оказывается средством связи между объектами. Согласно [2], событие — это «абстракция инцидента или сигнала в реальном мире, который сообщает нам о перемещении чего- либо в новое состояние». Далее, выделяются четыре аспекта события: метка — уникальный идентификатор события. значение — текстовое сообщение о сути произошедшего. предназначение — модель событий, которая принимает событие. данные — данные, которые переносится от одного объекта к другому. Индексаторы в классах C#.Индексаторы c#обеспечивают естественный синтаксис для доступа к элементам в классах или структурах, которые инкапсулируют список или словарь значений. Индексаторы являются подобными свойствам, но доступ к ним происходит с помощью аргумента индекса, а не имени свойства. Класс string имеет индексатор, который дает вам возмоность получить доступ к каждому из символов, который содержится в строке с помощью индекса типа int: 1.string s = "hello"; 2. 3.Console.WriteLine (s[0]); // 'h' 4. 5.Console.WriteLine (s[3]); // 'l' Синтаксис использования индексаторов c# похож на использование массивов, за исключением того, что аргумент индекса может быть любого типа. Индексаторы имеют те же модификаторы, которые доступны и для свойств. Реализация индексаторов c# Для записи индексатора определяется свойство, которое имеет имя this, а аргумент индекса заключается в квадратные скобки. Вот пример реализации индексатора c#: view source print? 01.class Sentence 02. 03.{ 04. 05.string[] words = "The quick brown fox".Split(); 06. 07.public string this [int wordNum]// объявление индексатора 08. 09.{ 10. 11.get { return words [wordNum]; } 12. 13.set { words [wordNum] = value; } 14. 15.} 16. 17.} |