Interfaces vs Abstract Classes
Interfaces
- Sets up a contract btw different classes
- Use when we have very different objects that we want to work together
- Promotes loose coupling
Abstract Classes
- Sets up a contract btw different classes
- Use when we re trying to build up a definition of an object
- Strongly couples classes together