title: Multiple Inheritance Ambiguity with Interface
body: <p>We all know about the <a href="http://en.wikipedia.org/wiki/Multiple_inheritance#The_diamond_problem" rel="noreferrer">diamond problem</a> regarding multiple inheritance - </p>
  
  <pre><code>   A
    / \
   B   C
    \ / 
     D
  </code></pre>
  
  <p>This problem describe an ambiguous situation for class <code>D</code>. If class <code>A</code> has a method and both/either of <code>B</code> and/or <code>C</code> override the method then which version of method does <code>D</code> override?  </p>
  
  <p>Is this problem also applicable for interfaces in Java? If not, how do Java interfaces overcome this problem?  </p>