实现接口的类和该接口之间是否有任何关系?

Joh*_*nna 4 java interface class-hierarchy

考虑这个类层次结构:

  • Book extends Goods
  • Book implements Taxable

我们知道,子类与其超类(is-a)之间存在关系.

问:有没有像"是一个"之间的任何关系BookTaxable

GOOD Answers,但是你说"is-a"也是Book和之间的关系Taxable,但是 "is-a"是之间的关系,而接口不是类!

Osc*_*Ryz 8

是.这种关系完全一样

书也是一种应税.

编辑

接口是恰好匹配Java(可能是C#我不知道)interface关键字的工件.

在OO接口中,类是"已提交"执行的操作集,仅此而已.就像对象类和客户之间的契约.

没有interface关键字的OO编程语言仍然具有类接口OO概念.


Jon*_*eet 5

那就是"支持 - 操作".就个人而言,我没有发现"is-a","can-do"等助记符非常有用.我更愿意考虑类型允许的内容,是否专注于现有行为或自己实施行为等.类比,如抽象,往往是漏洞.如果您知道接口继承和实现继承之间的区别,那么您可能不需要任何额外的用语来表达它.