Use template method pattern to implement subclasses defaults in the superclass (p126-127)