A class adapter uses multiple inheritance to adapt one interface to another:
An object adapter relies on object composition: