Статус экспорта процедур создания

Статус экспорта процедур создания

Для двух процедур создания, объявленных в классе POINT1, предложение feature имело вид feature {NONE}. Это означает, что эти процедуры закрыты для обычных вызовов, но остаются открытыми для порождающих вызовов. Только что представленные два примера порождающих вызовов являются корректными, но нормальные вызовы, например my_point.make_cartesian (0, 1) или my_point.make_polar (1, Pi/2) некорректны, так как процедуры недоступны клиентам со статусом обычных компонентов.

Решение о закрытости процедур означает, что мы не хотим после создания точки дать возможность клиентам прямого доступа к изменению их координат, хотя они могут делать это через другие процедуры класса, например такие, как translate и scale . Конечно, это лишь одна из возможных политик, вполне разумно экспортировать процедуры создания клиентам, придавая им дополнительно статус обычных процедур.

Для процедур создания можно установить выборочный статус порождающего вызова. Для этого достаточно в предложении creation перечислить классы, которым разрешается создавать объекты:

class C creation {A, B, ...}

p1, p2,

...

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

Статус подключений

Из книги автора

Статус подключений Внутренне PHP имеет три статуса подключения:При нормальном выполнении сценария активно состояние NORMAL. Если во время загрузки страницы пользователь нажал кнопку STOP, активным становится состояние ABORTED. Если сценарий выполняется дольше отведенного ему


О сомнительной пользе экспорта испорченных продуктов

Из книги автора

О сомнительной пользе экспорта испорченных продуктов Когда администрация президента Обамы решила прибегнуть к интеллектуальной помощи интернета для усовершенствования американской демократии, она не ожидала, что возникнет столько проблем. Когда работающие на Обаму


Статус

Из книги автора

Статус После регистрации ICQ, постоянно будет гостить в вашей области уведомлений (она находится в правой части Панели задач) в виде специального значка. В момент подключения к Интернету вместо значка появится изображение цветка. Если лепестки цветка зеленые, то


1.7.1 Состояние и статус стандартов

Из книги автора

1.7.1 Состояние и статус стандартов IAB периодически публикует информацию о работе над протоколами. Стадии разработки определяют текущее состояние протокола:? Experimental (экспериментальный)? Proposed (предлагаемый)? Draft (черновик)? Standard (стандарт)Некоторые протоколы маркируются как


Статус нахождения в Skype

Из книги автора

Статус нахождения в Skype В нижней части окна программы вы можете изменить свой статус нахождения в Skype. Большинство опций этого меню интуитивно понятны (рис. 5.23). Часть из них можно установить самому, а некоторые изменяет программа:? например, статус автоматически


Автоматизация импорта и экспорта

Из книги автора

Автоматизация импорта и экспорта Назначение спецификации – сохранение параметров импорта или экспорта данных, необходимых программе Access для повторения той или иной операции без участия мастера. Причем в спецификации можно изменить имя исходного или конечного файла


Отличия процедур типа Function от процедур типа Sub

Из книги автора

Отличия процедур типа Function от процедур типа Sub Между процедурами типа Function и типа Sub есть одно существенное отличие: в процедуре типа Function обязательно где-то должен присутствовать по крайней мере один оператор, задающий значение этой функции. При этом используется имя


Коммерческий статус программ. Виды распространения

Из книги автора

Коммерческий статус программ. Виды распространения Помимо тематического деления программ существует еще одна классификация. Связана она со способом распространения программы и теми условиями, приняв которые, потребитель получает возможность оной воспользоваться. Ну


Коммерческий статус программ. Виды распространения

Из книги автора

Коммерческий статус программ. Виды распространения Помимо тематического деления программ существует еще одна классификация. Связана она со способом распространения программы и теми условиями, приняв которые, потребитель получает возможность оной воспользоваться. Ну


Архитектурная роль селективного экспорта

Из книги автора

Архитектурная роль селективного экспорта Селективный экспорт это не просто удобство, а неотъемлемая часть ОО-архитектуры. Он позволяет группе концептуально связанных классов обеспечить друг другу доступ ко всем своим компонентам, скрыв их от остального мира в


Статус универсальных операций

Из книги автора

Статус универсальных операций Последние комментарии частично прояснили вопрос о статусе универсальных операций clone, copy, equal, is_equal, deep_clone, deep_equal.Эти операции не являются языковыми конструкциями, невзирая на их фундаментальную значимость для практики. Они поставляются


Предусловия и статус экспорта

Из книги автора

Предусловия и статус экспорта Возможно, вы заметили необходимость дополнительного требования, не отраженного в принципе обоснованности предусловия. Для того чтобы клиент мог проверить предусловие, оно не должно использовать закрытые свойства класса, недоступность


Роль процедур создания

Из книги автора

Роль процедур создания Инвариант класса задает множество свойств объектов (экземпляров класса), которые должны выполняться в стабильные времена жизни объектов. В частности, эти свойства должны выполняться сразу после создания экземпляра объекта.Стандартный механизм


Форматы экспорта, поддерживаемые Flash

Из книги автора

Форматы экспорта, поддерживаемые Flash Все форматы экспорта графики, поддерживаемые Flash, приведены в табл. 21.1. Из этой таблицы видно, что Flash может экспортировать графику как в векторные, так и в растровые форматы. В последнем случае вся векторная графика


Параметры форматов экспорта

Из книги автора

Параметры форматов экспорта В этом разделе описываются параметры различных графических форматов, в которые Flash может экспортировать наше изображение, а также диалоговые окна, позволяющие настраивать эти параметры. Эти окна появляются после того, как мы зададим имя