Классика баз данных - статьи

       

имеющие значимый тип. Спецификация метода


имеющие значимый тип. Спецификация метода может рассматриваться как спецификация компонента, имя которого совпадает с именем метода, а тип - с типом значения, возвращаемого методом (спецификация метода включает также описание параметров значимых типов).

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

Замечание. Конечно, спецификация в определённом смысле определяет реализацию. Например, наличие параметров у метода позволяет предположить, что значение, возвращаемое методом, должно быть вычисляемым. Однако эта зависимость все же не очевидна. Вполне возможна такая реализация метода, что возвращаемое им значение не требует вычислений (например, при наследовании одна из реализаций метода использует параметры, а другая может их не использовать). Более того, это значение может быть реализовано вообще как хранимое. С другой стороны, реализации атрибутов, не имеющих параметров, может содержать вычисляющие выражения.

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

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


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