Classes like our DNA are symbolic representations of objects; they describe the
properties, fields, methods, and events that make up objects in the same way
that blueprints describe the items that make up a building. Just as a
blueprint can be used to create multiple buildings, a single class can be used
to create as many objects as necessary. Just as a blueprint defines which
parts of a building are accessible to people who use the building, so too can
classes control user access to object items through encapsulation.
The terms "class" and "object" are sometimes used interchangeably, but in
fact, classes (again like DNA) describe the structure of objects, while objects are
usable instances of classes. Each instance is an exact yet distinct
copy of its class. Because an object is an "instance" of a class, the act of
creating an object is called instantiation. The class is one of the
defining ideas of object-oriented programming. A class can have subclasses
that can inherit all or some of the characteristics of the class
As a collection of classes, the library is a key cornerstone of our
software.
For example,
EvaporatorCode predicts the
performance of a refrigerant evaporator cooling moist air in an air conditioning system.
It has 51 class modules. The Windows Form class module used to present the serpentine fin evaporators with micro channel tubes to the
EvaporatorCode program user has 4656 lines of code.
This Window communicates
directly with 18 of the other class modules as they work with the rest
or the classes creating an accurate heat transfer simulation with reports.