11 hours ago, wkempf wrote
@Dr Herbie: Sorry, that's not correct, nor does it explain why to use one over the other.
1234publicabstractclassFoo{publicabstractvoidBar();}There's no default implementation for any method to be found in that example.
But what is the purpose of code like that? Why would you make it abstract and not an interface?
If I saw that in live code I would change it to an interface.
I get what you mean about multiple inheritance. In C++ I would have used a pure abstract class with no implementation instead of an interface because I never liked to use multiple inheritance with real implementations in the base class. I was so glad that C# didn't allow it.
Herbie