Classes support the same definitions for variables, buffers, queries, temp-tables, and ProDataSets as procedures do, with one difference. That difference is in the access mode
PRIVATE,
PUBLIC, or
PROTECTED. Because of this difference, these built-in data types are referred to as data members when instances are defined for use at the class block level. For more information on what access modes are valid for each type of data member definition, see
Defining data members within a class. By default, all data members are
PRIVATE.
Properties provide another means to define instances of certain data types for use at the class block level. Properties use the same access modes as data members. However, because properties are typically used to encapsulate access to class data from outside the class hierarchy, the default access mode for properties is PUBLIC.