Patent ID: 7039923

Claim:
A system comprising: a processor; a memory configured to store program instructions, wherein the program instructions implement an application executable by the processor; wherein the application comprises a plurality of classes, wherein the plurality of classes comprises one or more non-interdependent classes and at least one set of two or more interdependent classes; wherein the application further comprises a hierarchical stack of class loaders each configured to load one or more of the plurality of classes in the application, wherein each class of the plurality of classes is loadable by exactly one of the class loaders, and wherein said hierarchical stack of class loaders comprises: a separate class loader for each set of two or more interdependent classes; and a separate class loader for each of one or more groups of non-interdependent classes, wherein each group comprises at least one of the one or more non-interdependent classes; wherein, during execution of the application, the program instructions are executable by the processor to: detect that one of the plurality of classes has been changed; and replace a current class loader in the hierarchical stack of class loaders that is configured to load one or more of the plurality of classes including the class that has been changed with a new class loader that is configured to load the one or more of the plurality of classes including the changed class; and wherein the new class loader is configured to load the one or more of the plurality of classes including the changed class in the application during execution of the application.