I once done this assignment a while back and now trying to enhance it and stuff. But I found a potential problem with my implementation.
When the hashmap is created should the value be a "Thing" or "String" through the getDescription() method? eg HashMap<Integer, String> hMap ... or HashMap<Integer,Thing> hMap ... assuming I populate the hashmap like this: hMap.put(1, new BookOnTape()); //<Integer,Thing> hMap.put(1, new BookOnTape().getDescription()); //<Integer,String>
Another way of asking is once the hashmap is populated, should the Thing's serial number be the same as the hashmap key?