News

In the designers’ opinion, multiple inheritance causes more problems and confusion than it solves. So they cut multiple inheritance from the language (just as they cut operator overloading).
I recently read an article entitled "Why is multiple inheritance so abhorred" in which code was reproduced without using code tags.
To solve the first problem, multiple interface inheritance prohibits interfaces from specifying code bodies. Instead, the class that implements the interface supplies the code body.
A controversial new proposal for .NET suggests the introduction of a limited form of multiple inheritance via abstract interfaces. This feature was inspired by Java’s default methods.
Why is multiple inheritance so abhorred? MI can be a powerful feature when executed correctly, but it's hard to master.