This section discusses the assignments and special statements that set the references (or pointers) used in data references and field symbols.
When using field symbols and data references that contain references to data objects, the following should be noted:
- In a regular assignment between field symbols, as occurs in an assignment of data objects, each field symbol is handled as a dereferenced pointer (value semantics).
- In a regular assignment between data references, as occurs in an up cast or down cast, the references are copied (reference semantics). The corresponding rules can be found in the assignment rules for reference variables.
For the dynamic data objects (strings, internal tables, and boxed components) which are also managed internally using references, value semantics apply. This means that the internal management is not visible for the developers.