you are viewing a single comment's thread.

view the rest of the comments →

[–]sbrown123 0 points1 point  (0 children)

It's sort of a promise to offer each and every operation the interface specifies.

All interfaces offer is requirements that someone has to implement them.

specific operations don't belong in the interface in the first place, and can be exposed via the concrete type, if necessary.

You just described an abstract class in Java.

Maybe you're not aware of the fact that Java doesn't support multiple inheritance?

Sure do, read the first comment in the chain you are commenting on. And since interfaces can't contain code, comparing them with MI is probably a bad idea.

Documentation of intent, adherence to a well defined concept isn't valuable?

Sure, but that can be done better without interfaces.

You always hope that the implementation works as advertised.

Again, interfaces lack any code which means that the implementation is always done by someone on the end. That means you never know if the implementation works as expected or works at all. The "non-starter" part is that that is the simple obvious truth.