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.
Java doesn't support multiple inheritance because of Deadly Diamond of Death Lets take an example: 1)take notebook and a pencil and start making a diagram
2)Suppose we have one class A, with method printMe()
3) We have two subclass B and C,Both inherits A,both Override printMe() A
B C connect them by arrow.
4) we have one more sublclass D, Now if Java supports multiple inheritance then we can write
class D inherits B,C
which means following : A
connect them by arrow again.
now suppose we have following;
Now tell me which verion of printMe() will be called , one which is defined in B or which is defined in C. If you know the answer to this question you have understood Deadly diamond.. by the way check your paper you have already got one diamond shape diagram..!!