Doubt: How does Java and C# .NET compensate for not having multiple inheritance?

Posted by iamtheaashish@reddit | learnprogramming | View on Reddit | 20 comments

I have been reading a book named "The object oriented thought process". There is a topic of multiple inheritance in this book and its says that multiple inheritance is only supported by language like C++ and Java and C sharp does not support multiple inheritance because the disadvantages of having multiple inheritance ways more than advantages of having it.

My doubt is that how does Java and C sharp.net compensate for not having multiple inheritance. There is a paragraph given over here but I am not able to comprehend it.

"The modern concept of inheritance is that you can only inherit attributes from a single parent (single inheritance). Even though you can use multiple interfaces or protocol this is not truly multiple inheritance."

What is multiple interfaces exactly?

I would be greatful if you explain it to me please.

I have familiarity with C++ and learning C# right now.