This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
In Head First Java Chapter 7 there is a puzzle where you're to add missing parts of the code to get it to compile which will then give the print result - "drift drift hoist sail " I have the proper code but I'm having trouble walking through the code to see how it prints out "drift drift hoist sail"
There is one system.print.out that is "stroke natasha" but it doesn't get printed. The code is below. Could someone tell me how this works?
Boat b1 = new Boat();
Sailboat b2 = new Sailboat();
Rowboat b3 = new Rowboat();
b1.move(); // prints "drift" because calls the Boat classes move method
b3.move(); // prints "drift" because calls the Boat classes move method (While we have a RowBoat, it doesn't have a move
method and inherits the superclass Boat's one)
b2.move(); // prints "hoist sale" because calls the Sailboat's move method. Since it has its own, the superclass Boat's move method doesn't get called