Введение в теорию программирования. Объектно-ориентированный подход


Основные понятия языка программирования C# - часть 4


Заметим, что координаты точки x, y (в простейшем случае целочисленные), которые используются для определения ее положения, являются атрибутами объекта или полями структуры.

Операция Point является функцией инициализации объекта и называется конструктором. Обратите внимание, что унаследованный от C++ указатель this представляет собой ссылку на текущий объект.

Наконец, операция (или, иначе, метод) MoveTo изменяет текущее местоположение точки на пару целочисленных координат (a,b).

Для использования объекта-структуры необходимо проинициализировать объект-значение в стеке посредством конструктора. Затем можно вызвать метод MoveTo:

Point p = new Point(3, 4); p.MoveTo(10, 20);

Мы познакомились с одним из основных видов объектов языка программирования C#, а именно, со структурами.

В предыдущем примере фрагмента программы на C# дважды фигурировал идентификатор Point. В связи с этим уместно вспомнить о проблеме коллизий переменных и возможных путях ее преодоления (в предыдущей части курса для решения этой задачи использовался формализм, известный под названием чисел де Брейна). В языке программирования SML переменные могут быть описаны либо глобально (это описание распространяется на весь текст программы), либо локально в теле функции (это описание распространяется на весь текст функции).

В языке программирования C#, где объекты имеют существенно более сложную структуру, вводится понятие области описания, под которой понимают фрагмент программы, к которому относится данное описание.

Объекты языка программирования C# могут быть описаны:

  • в пространстве имен (классы, интерфейсы, структуры, перечисления, делегаты);
  • в классе, интерфейсе, структуре (поля, методы, свойства, события, индексаторы);
  • в перечислении (перечисляемые константы);
  • в блоке (локальные переменные).

При этом принимаются следующие контекстные соглашения.

Во-первых, недопустимо двукратное описание в пределах данной области описания. Во-вторых, последовательность описаний является произвольной. Исключение составляют локальные переменные, которые необходимо описать до первого использования.




Начало  Назад  Вперед



Книжный магазин