Joh*_*nna 4 java interface class-hierarchy
考虑这个类层次结构:
Book extends Goods
Book implements Taxable
我们知道,子类与其超类(is-a)之间存在关系.
问:有没有像"是一个"之间的任何关系Book
和Taxable
?
GOOD Answers,但是你说"is-a"也是Book
和之间的关系Taxable
,但是 "is-a"是类之间的关系,而接口不是类!
是.这种关系完全一样
书也是一种应税.
编辑
接口是恰好匹配Java(可能是C#我不知道)interface
关键字的工件.
在OO接口中,类是"已提交"执行的操作集,仅此而已.就像对象类和客户之间的契约.
没有interface
关键字的OO编程语言仍然具有类接口OO概念.
那就是"支持 - 操作".就个人而言,我没有发现"is-a","can-do"等助记符非常有用.我更愿意考虑类型允许的内容,是否专注于现有行为或自己实施行为等.类比,如抽象,往往是漏洞.如果您知道接口继承和实现继承之间的区别,那么您可能不需要任何额外的用语来表达它.