5.23.2 Object-Oriented Terminology
This section is mainly for reference, so you don't have to understand
all of it right away. The terminology is mainly Smalltalk-inspired. In
short:
- class
- a data structure definition with some extras.
- object
- an instance of the data structure described by the class definition.
- instance variables
- fields of the data structure.
- selector
- (or method selector) a word (e.g.,
draw
) that performs an operation on a variety of data
structures (classes). A selector describes what operation to
perform. In C++ terminology: a (pure) virtual function.
- method
- the concrete definition that performs the operation
described by the selector for a specific class. A method specifies
how the operation is performed for a specific class.
- selector invocation
- a call of a selector. One argument of the call (the TOS (top-of-stack))
is used for determining which method is used. In Smalltalk terminology:
a message (consisting of the selector and the other arguments) is sent
to the object.
- receiving object
- the object used for determining the method executed by a selector
invocation. In the objects.fs model, it is the object that is on
the TOS when the selector is invoked. (Receiving comes from
the Smalltalk message terminology.)
- child class
- a class that has (inherits) all properties (instance variables,
selectors, methods) from a parent class. In Smalltalk
terminology: The subclass inherits from the superclass. In C++
terminology: The derived class inherits from the base class.