Inheritance is inappropriate when
A class has another class as a component
- A point has-a coordinate but is not a coordinate (is-a vs. has-a)
- The interfaces aren’t related
- Use a slot instead
Only part of the other class’ implementation is reused
Representation of other class needs to be altered
When in doubt, don’t inherit!