Define a static constructor
- Last Updated: October 30, 2020
- 1 minute read
- OpenEdge
- Version 12.2
- Documentation
If a class has static members, ABL creates a default
static constructor for the class, if you do not define one, that
initializes any static data members and properties of the class
with their initial values. If you do define a static constructor,
it can take no parameters, and like any static method, it cannot
access instance members of the class. As a result, it also cannot
execute the SUPER or THIS-OBJECT statements,
which invoke only instance constructors. A typical reason to define
a static constructor is to complete the initialization of static
data members, such as ProDataSets, that require executable statements
to complete their initialization. For more information on static
constructor execution, see Initialize and delete static members.