> There aren't that many things I feel extremely strongly about when it > comes to Java, but avoiding classes where interfaces are usable is > definitely one of them. I get that, I do. I think we are still "programming to an interface", but the interface marker is presence in *-api rather than the interface keyword.