|Who me? Oh No...it's yours... That's delegation.||
Delegation allows the behaviour of an object to be defined in terms of the behaviour of another object. The term 'delegation' refers to the delegation of responsibility. The primary emphasis of delegation is on message passing where an object could delegate responsibility of a message it couldn't handle to objects that potentially could (its delegates).
Delegation can be explicit or implicit. With explicit delegation an object can explicitly delegate a message to any other object it has knowledge of. With implicit delegation an object can explicitly designate another object as its "parent". Messages that are not understood by the receiving object are automatically (implicitly) delegated to this parent.
We can distinguish two different kinds of implicit delegation. If the delegation structure can be dynamically changed, we talk about unanticipated delegation, whereas anticipated delegation refers to the fact that objects cannot change parent during their life-time.
VISIT AN AREA IN OzEdweb