Inheritance should be used when one class is a specialized version of another, representing a true 'is-a' relationship. For example, 'Circle' inheriting from 'Shape' is appropriate because a circle is a specific type of shape. This ensures that the subclass can naturally extend the behavior of the superclass.