Benefits: It allows two or more presents to interact.it allows reusability of existing functionality.
Applicable Scenarios: an Object Needs to Utilize An Existing Class with An Incompatible Interface.You Want To Create A Reusable Class That Cooperates with classes That Don't Necessarily Have Compatible Interface.