Define an object reference parameter
- Last Updated: February 9, 2026
- 2 minute read
- OpenEdge
- Version 13.0
- Documentation
Procedures, user-defined functions, and class-based methods can all define object reference parameters (as class or interface types). When an object is passed locally, class instances are passed by reference using object references. Thus, only a reference to an object is passed, not the object itself. When an object is passed between an application server and an ABL client, the object is serialized by the sender, and the receiver uses this information to create a copy of the object.
This is the syntax to define an object reference parameter for a method in a class or a user-defined function in a procedure:
Syntax
|
This is the syntax to define an object reference parameter for a procedure:
|
Descriptions of the object reference parameter syntax elements (bolded) follow:
- parameter-name
- The name of the parameter representing the object reference.
- CLASS
- The
CLASSkeyword is required if object-type-name conflicts with an abbreviation for a built in ABL data type, such asINTE(INTEGER). Otherwise, it can optionally be used to clarify the readability of the statement. - object-type-name
- The class or interface type name of an object reference to
be passed. This can be the fully qualified object type name or the
unqualified class or interface name, depending on the presence of an
appropriate
USINGstatement in the class or procedure file. For more information on object type names, see Define and reference object type names. For more information on theUSINGstatement, see Reference an object type name without its package.
For more information on the full syntax for parameter definitions, see DEFINE PARAMETER Parameter definition syntax.