In an object-oriented computer system, one or more run-time extensible items
may
be dynamically reconfigured as required to support different interfaces at run-time
via one or more extensions owned by the extensible item. When an invokeMethod(
) method on an extensible item is invoked, specifying the method name, the extensible
item cycles through its extensions, from newest to oldest, looking for an extension
that supports the named method. Each extension determines whether a method table
exists that corresponds to the extension class. If not, a method table corresponding
to the extension class is created. When an extension is found that supports the
named method, a method node that corresponds to the named method is returned. The
method node then invokes the named method on the extension.