O'Reilly logo
  • Shayne Riley thinks this is interesting:

The only way to test a class designed for inheritance is to write subclasses. If you omit a crucial protected member, trying to write a subclass will make the omission painfully obvious. Conversely, if several subclasses are written and none uses a protected member, you should probably make it private.

From

Cover of Effective Java, 2nd Edition

Note

As said later, the subclasses should be written by someone other than the superclass author.