Terms and Definitions

 < Day Day Up > 



The terms and definitions listed in table 19-1 were used throughout this chapter:

Table 19-1: Terms and Definitions Related to the LSP

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 functions.

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 function to ensure its proper operation.

Postcondition

A condition, constraint, or set of constraints that must be satisfied when an abstract data type function 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 functions common to a set of objects.

Abstract Class

The declaration of an abstract data type specifying a set of attributes and interface functions common to a set of objects. Interface function implementations are deferred to subclasses. In C++ interface functions in an abstract class are declared to be pure virtual.

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.



 < Day Day Up > 



C++ for Artists. The Art, Philosophy, and Science of Object-Oriented Programming
C++ For Artists: The Art, Philosophy, And Science Of Object-Oriented Programming
ISBN: 1932504028
EAN: 2147483647
Year: 2003
Pages: 340
Authors: Rick Miller

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net