System and method for parent class shadowing in a statically linked object hierarchy
First Claim
1. A system to replace one of a plurality of object oriented classes each having a data structure and a plurality of methods, said classes organized in a statically linked executable version of a class hierarchy, said linked executable version including a static class name resolution means for determining an address of said class data structure and methods based on a class address assigned in said statically linked executable version, comprising:
- (a) means for replacing said static class name resolution means with a new class name resolution means;
(b) means for registering a new class object to replace one of said plurality of class objects, said new class object having the same name as the replaced class object;
(c) means for determining the class object for a class based on a class name using said new class name resolution without relining the plurality of classes in the class hierarchy.
0 Assignments
0 Petitions
Accused Products
Abstract
A method, system and program for supporting a dynamic bind between a derived class and its parent class. A processor provides for the registration of class objects and dynamic binding of derived class objects to their parent class objects based on the registration mechanism. The SOM object model removes static references to class objects by having all the parent class information available at runtime through the parent class object. Thus, when the derived class implementation needs information about the size of the parent class state data structure, the addresses of the parent class method procedures, or access to the parent class method procedure table the appropriate information is retrieved from the parent class object.
-
Citations
12 Claims
-
1. A system to replace one of a plurality of object oriented classes each having a data structure and a plurality of methods, said classes organized in a statically linked executable version of a class hierarchy, said linked executable version including a static class name resolution means for determining an address of said class data structure and methods based on a class address assigned in said statically linked executable version, comprising:
-
(a) means for replacing said static class name resolution means with a new class name resolution means; (b) means for registering a new class object to replace one of said plurality of class objects, said new class object having the same name as the replaced class object; (c) means for determining the class object for a class based on a class name using said new class name resolution without relining the plurality of classes in the class hierarchy. - View Dependent Claims (2)
-
-
3. A method for replacing one of a plurality of classes in a class hierarchy, each of said classes having a data area and methods addressable at a class address, the class hierarchy having a class name resolution means for determining a class address given for a class name from an address assigned when said class is statically linked, said class name resolution means previously statically linked with the class hierarchy into an executable form, the method comprising the steps of:
-
(a) replacing the class name resolution means with a new class name resolution means; (b) registering a new class object to replace a class object having the same class name; (c) determining the class address of a class based on a class name using said new class name resolution means to reference said new class without relinking any others of said plurality of classes. - View Dependent Claims (4, 5, 6, 7)
-
-
8. A computer implemented system for dynamically modifying a binary image of a statically linked object hierarchy, the object hierarchy defining a plurality of object classes each having object methods for acting on instances of an object in said classes, the system comprising:
-
class management means for managing the construction of new class objects in a memory of a computer system according to a first set of construction rules; means for dynamically replacing said class management means with a new class management means having new construction rules; means for dynamically adding a new class to said statically linked object hierarchy; and means for registering said new class with said new class management means such that said new class is referenced by said new class management means. - View Dependent Claims (9, 10, 11, 12)
-
Specification