University of Calgary
mail toRob Kremer

SENG 701.01 Object Theory

Glossary


Definitions
Abstract Data Types (ADTs):
Entities that encapsulate information and provide operations to manipulate objects.
Algebra:
Formal, mathematical entity composed of sets of values and operations (to manipulate these values).
Attributes:
Methods and Fields in a class.
Class:
A description of an object. (Just for interests sake, Booch's definition reads "A set of objects that share a common structure and a common behaviour. The terms class and type are usually(but not always) interchangeable." - This is the chicken/egg thing -> Is a class a template for an object, or are a group of objects a class?)
Class instantiation:
Technique on which new objects are created from classes, which are templates that identify objects' methods and instance variables.
Data abstraction:
Mechanism on which objects implement a message interface (i.e., methods) to encapsulate a state (i.e., instance variables).
Data algebras:
Concrete representation (i.e., implementation) of ADTs.
Delegate:
points to a common method suite
Embedded:
A copy of the method is found in each object.
Existential type:
Entity that defines an object's available operations and their use without describing their implementation or the type used as the carrier of the algebra.
Field:
Specific variables of a class
Functional polymorphism:
Technique on which an operation have a consistent behavior independently of the type of its arguments.
Inheritance:
(1) To inherit is to receive properties or characteristics of another. Often refered to as on "is-a" relationship.
(2) Reception of characteristics from another entity, normally as a result of some special relationship between the giver and receiver. 
(3) Enhancement of descriptive power based on either subclassing (in class-based languages), or delegation of responsibility (in prototype-based languages).
Methods:
Code to operate on a class or instantiation of the class.
Object:
Entity with a state (maintained by instance variables), methods (which are prescriptions for responding to messages), and an identity (based on a "self" that persists over time independently of its changes in state).
Overloading:
Mechanism on which a single identifier can refer to different operations discriminated by the type of their arguments 
Overriding:
Mechanism to provide extended and consistent behaviour to subclasses.
Prototyping:
Technique on which new objects are created by using objects already in existence.
self:
refers to the current object.
Subclass:
A class that inherits from one or more classes.
Superclass:
Refers to the immediate parent class. (This gets abit weird when dealing with multiple inheritance)
Type:
Entity applied to the characterization of values that arise in the course of computation.


The University of Calgary
back to previous page
back
Up to page above
up
forward to next page

mail toRob Kremer
Last Modified Aug 15, 2005
CPSC 701.01 Object Theory
 Graduate Course