in reply to Re^3: interface.pm explained
in thread interface.pm explained

My interest was piqued, so I had to see what Java does when your class implements two interfaces with "conflicting" function signatures. (They're not strongly conflicting since there's no code that's competing like in MI.)

Curiously, the following code compiles cleanly without even a warning — at least on Eclipse 3.0 with the default warning settings (and I couldn't find anything to change there that might be relevant).

// JITest.java: public class JITest implements JIA, JIB { public void a() { } } // JIA.java: public interface JIA { public void a(); } // JIB.java: public interface JIB { public void a(); }

It's curous to me not because I don't see why this works. It's obvious that it *can* work. But interface clash means a design problem, and I'd expect this to at least warrant a warning.