Объектно-ориентированное программирование.Язык Смолток



             

Сообщения



Сообщения

Как уже говорилось, посылка сообщения служит для активизации того или иного метода. Такая посылка содержит указание адресата - имя получателя сообщения, т.е. имя объекта, к которому посылается сообщение, и само сообщение, представляющее собой требование выполнить процедуру над объектом - получателем сообщения. При этом вызывается соответствующая программа (метод). Сообщение представляет собой имя сообщения и, возможно, несколько объектов-параметров, с которыми может манипулировать метод.

Сообщение определяет, какая требуется операция, но не определяет, каким образом эта операция должна выполняться. Только получатель – объект, которому посылается сообщение, определяет, как выполнить эту операцию. Выполняемая операция, если она возможна, рассматривается как встроенная способность объекта, которую можно единообразно вызвать посылкой ему сообщения.

Программа в системе ООП, таким образом, - последовательность сообщений к различным объектам.

При описании посылок сообщений используют так называемые селекторы.

Посылка сообщения с унарным селектором может записываться, например, следующим образом: stack pop. Здесь stack указывает на объект - получатель сообщения, а pop

является унарным селектором, который и образует сообщение.

Посылка сообщения с бинарным селектором, например, арифметическое выражение, записывается в виде: x+y. Здесь x - получатель сообщения, а +y - сообщение. При этом y – единственный параметр, а "+" - бинарный селектор.

В общем случае бинарные селекторы должны оформляться специальными символами.

Есть возможность создания посылок с несколькими параметрами в сообщении. В выражении, реализующем эту возможность, используется селектор с ключевыми словами. Например, в посылке сообщения

pen move:east by:10

pen - получатель сообщения, move:east by:10 - само сообщение. Два ключевых слова move: и by: представляют собой селекторы ключевых слов, а east и 10 - значения параметров. В селекторе с ключевыми словами каждое ключевое слово должно заканчиваться двоеточием.


Содержание  Назад  Вперед