Returns a Progress.Lang.Class instance representing the class in which the constructor, event, method, data member, or property is defined.
Data type: Progress.Lang.Class class
Access: PUBLIC Read-only
Applies to: Progress.Reflect.Event class, Progress.Reflect.Method class, Progress.Reflect.Variable class
When applied to a class member (method, property, or event) that is overridden, the DeclaringClass property returns the most-derived class containing the implementation of the member.
For example, consider the classes defined in the following code fragment:
CLASS ClassA: METHOD PUBLIC VOID MethodA: MESSAGE "A method has been called." VIEW-AS ALERT-BOX. END METHOD. END CLASS. CLASS ClassB INHERITS ClassA: END CLASS. CLASS ClassC INHERITS ClassB: METHOD PUBLIC OVERRIDE VOID MethodA: MESSAGE "An overriden method has been called." VIEW-AS ALERT-BOX. END METHOD. END CLASS. |
Calling GetMethod("MethodA", params) on instances of Progress.Lang.Class derived from each of the three classes would return Progress.Reflect.Method instances with the DeclaringClass properties set as shown in the table:
Progress.Lang.Class instance | Class indicated by the DeclaringClass property |
---|---|
ClassA | ClassA |
ClassB | ClassA |
ClassC | ClassC |
See also: OriginatingClass property