Advantages and Disadvantages of Interfaces
Advantages :
- Clients are unaware of the specific class of the object they are using .
- One object can be easily replaced by another
- Object connections need not be hardwired to an object of a specific class,
thereby increasing flexibility - Loosens coupling
- Increases likelihood of reuse
- Improves opportunities for composition since contained objects can be of
any class that implements a specific interface
- Modest increase in design complexity
