001    /**
002     * The root of the rodent hierarchy. Part of exercise 7.6 and 7.7. This class is
003     * abstract but has concrete methods that are overwritten in the subclasses.
004     * Because the class is abstract it is not possible to make instances of the
005     * class. As an example <code>Rodent r = new Rodent()</code> does not work. In
006     * this way one can say that concrete methods in abstract classes that are
007     * overwritten in subclasses are <it>dead code </it>.
008     * 
009     * 
010     * @author Kristian Torp, torp (at) cs (dot) aau (dot) dk
011     * @version 1.0
012     */
013    public abstract class Rodent {
014    
015            /**
016             * Tell how I'm
017             */
018            public void myself() {
019                    System.out.println("I'm a rodent");
020            }
021    }