Abstract:
Embodiments of the present invention provide for techniques for enabling mutation of an instantiated object between multiple underlying object types at run time. The object may alter its behavior from one object type to another at anytime without requiring a new object to be instantiated. The object's behavior may be implemented by other objects which are retrieved at run time, thus disconnecting the direct link between the object's behavior and the object.
Abstract:
Embodiments of the present invention provide for techniques for enabling mutation of an instantiated object between multiple underlying object types at run time. The object may alter its behavior from one object type to another at anytime without requiring a new object to be instantiated. The object's behavior may be implemented by other objects which are retrieved at run time, thus disconnecting the direct link between the object's behavior and the object.