Programming with Class-based and Procedure Objects
Programming with Class-based and Procedure Objects
The CLASS and INTERFACE statements provide a clear distinction in ABL between a class (or interface) and a procedure. Any source file (or larger compilation unit, if you consider the use of include files) that contains the CLASS statement defines a class; any file that contains an INTERFACE statement defines an interface, and any file that does not contain a CLASS or INTERFACE statement defines an external procedure.
As you have learned, there are several key differences in the language statements you use in procedures and the statements you use in classes. However, always keep in mind that the vast majority of ABL statements are usable in both procedures and classes, and in general have the same behavior, with the exceptions noted as part of this and other chapters of this manual.