Options:
- Create a child class that can be substituted for a parent class
- Create an intermediary class to act as a middleman between objects
- Create a superclass that’s of a different type to its subclasses
-
Create a fake class to handle operations that don’t belong with other objects