Область действия идентификатора компоненты простирается за
пределы объектного типа. Более того, область действия идентифика-
тора компонента простирается сквозь блоки процедур, функций,
конструкторов и деструкторов, которые реализуют методы объектного
типа и его наследников. Исходя из этих соображений, написание
идентификатора компоненты должно быть уникальным внутри объектно-
го типа и внутри всех его наследников, а также внутри всех его
методов.
Область действия идентификатора компонента, описанного в
части private описания типа, ограничивается модулем (программой),
которая содержит описание объектного типа. Другими словами, част-
ные (private) компоненты-идентификаторы действуют, как обычные
общедоступные идентификаторы в рамках модуля, который содержит
описание объектного типа, а вне модуля любые частные компоненты и
идентификаторы неизвестны и недоступны. Поместив в один модуль
связанные типы объектов, можно сделать так, что эти объекты смо-
гут обращаться к частным компонентам друг друга, и эти частные
компоненты будут неизвестны другим модулям.
В описании объектного типа заголовок метода может задавать
параметры описываемого объектного типа, даже если описание еще не
полное. Это иллюстрируется методами Copy, Intersect и Union типа
TRectange в предыдущем примере.