Remember that class inheritance does not match interface implementations.
is-a. D : B, D B. B , D , , ; "" D B.
, , ID : IB, ID IB , . ? ID IB - ; . . : ", ID, IB."
, ID IB, ID, . , , promises , ID, .
, IB X, "does ID X?" . ID IB, X, X.