About Delegates
Delegates is reference type variable used in Programming language Such as C and C++ language as pointer to function which is used for hold the reference to Method and mainly used in event and call back methods. The reference of Delegates method is changed at run time.If we wants want to use another class's functionality, as it without changing that behavior at all then we can used Delegation using HAS a Relationship.In another words, whenever you need to use functionality in another class without change that functionality, consider using delegation instead of inheritance.
Related resources for Delegates