Inheritance captures the idea of the is-a relation. The new thing is a more specialized, or more complete, version of the old thing. So it is useful when a new software component extends or completes the behavior specified by an existing component.
The rule of thumb, if the sentence new thing is-a old thing sounds right, then inheritance can be used.