lotus

previous page: 1.9) Does Multiple Inheritance Pose Any Additional Difficulties? (Object-Oriented Technology)
  
page up: Object-Oriented Technology FAQ
  
next page: 1.11) What Is Shared (Repeated) Inheritance? (Object-Oriented Technology)

1.10) What Is Dynamic Inheritance? (Object-Oriented Technology)




Description

This article is from the Object-Oriented Technology FAQ, by Bob Hathaway rjh@geodesic.com with numerous contributions by others.

1.10) What Is Dynamic Inheritance? (Object-Oriented Technology)

Dynamic inheritance allows objects to change and evolve over time. Since base
classes provide properties and attributes for objects, changing base classes
changes the properties and attributes of a class. A previous example was a
window changing into an icon and then back again, which involves changing a
base class between a window and icon class.

More specifically, dynamic inheritance refers to the ability to add, delete,
or change parents from objects (or classes) at run-time. Actors, CLOS, and
Smalltalk provide dynamic inheritance in some form or other. Single hierarchy
systems, such as Self, provide dynamic inheritance in the form of delegation
[Ungar 87].

See also [Kim 89, chs 1, 3] for a discussion and [Coplien 92] for some
implementation discussion in C++.

 

Continue to:













TOP
previous page: 1.9) Does Multiple Inheritance Pose Any Additional Difficulties? (Object-Oriented Technology)
  
page up: Object-Oriented Technology FAQ
  
next page: 1.11) What Is Shared (Repeated) Inheritance? (Object-Oriented Technology)