The question whether Java supports multiple inheritance or not can simply be answered as both yes and no. In fact, Java separates implementation inheritance from interface inheritance. Interface inheritance deals with the contract to which a class adheres. On the other hand, implementation inheritance deals with both the reuse of the code and the contract to which a class adheres.
Java only permits the multiple inheritances of interfaces and the single inheritances of implementation. It is different from other programming languages such as C++ where both the concepts are intermingled, which makes them unnecessary complicated. Java is a simpler programming language than other programming languages such as C++. This is because in Java, the concepts of interface inheritances and implementation inheritances are not intermingled. Since the Java programming language does not support multiple inheritance, it allows a class to extend more than one class of bases. Multiple interfaces are similar to multiple inheritances.
Java only permits the multiple inheritances of interfaces and the single inheritances of implementation. It is different from other programming languages such as C++ where both the concepts are intermingled, which makes them unnecessary complicated. Java is a simpler programming language than other programming languages such as C++. This is because in Java, the concepts of interface inheritances and implementation inheritances are not intermingled. Since the Java programming language does not support multiple inheritance, it allows a class to extend more than one class of bases. Multiple interfaces are similar to multiple inheritances.