The terms and definitions listed in table 24-1 were used throughout this chapter:
Term | Definition |
---|---|
Abstraction | The separation of the important from the unimportant. (i.e. interface vs. implementation) |
Abstract Data Type | A type specification that separates the interface to the type from the type’s implementation. An abstract data type represents a set of objects that can be manipulated via a set of interface methods. |
Supertype | An abstract data type that serves as a specification for related subtypes. |
Subtype | An abstract data type that derives all or part of its specification from another abstract data type. A subtype can inherit the specification of a supertype then add something extra if required. |
Type Specification | A declaration of the behavioral properties of an abstract data type. A specification describes the important characteristics of the data abstraction. |
Encapsulation | The act of hiding private implementation details behind a publicly accessible interface. |
Precondition | A condition, constraint, or set of constraints that must hold true during a call to an abstract data type interface method to ensure its proper operation. |
Postcondition | A condition, constraint, or set of constraints that must be satisfied when an abstract data type method completes execution. |
Inheritance Hierarchy | A set of abstract data type specifications that implement a supertype and subtype relationship between each abstract data type. |
Class | The declaration of an abstract data type specifying a set of attributes and interface methods common to a set of objects. |
Abstract Class | The declaration of an abstract data type specifying a set of attributes and interface methods common to a set of objects. One or more interface methods are declared to be abstract and are therefore deferred to subclasses for implementation. |
Subclass | A declaration of an abstract data type taking all or part of its specification from another, possibly abstract, class. |
Class Invariant | An assertion about the state of an object which must hold true for all possible states the object may assume. |