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 line "Animal a1 = d;" my understanding is it's a polymorphism, because d is a newly declared dog, and a1 is assigned to be it. But in the guide book, it says this line is an implicit upcasting. What's wrong with my uderstanding?
The polymorphism comes in force upon invoking a method on Animal when it's dynamic type is Dog. If the method is overridden in Dog, the Dog's version gets executed, even though the static type is Animal. And this is called Polymorphism.
JDBCSupport - An easy to use, light-weight JDBC framework -