【发布时间】:2010-11-25 19:41:47
【问题描述】:
来创建接口时,你是根据行为来创建的吗,遵循-able标准,例如
interface Comparable
interface Enumerable
interface Listable
interface Talkable
interface Thinkable
或基于对象,例如
interface Comparator
interface Enumerator
interface List
interface Human
为什么?
更新
这个问题与命名约定无关(-able 后缀或 I- 前缀)。这是关于界面的设计意图及其影响,在以下方面:-
- 灵活性
- 复杂性/简单性
- 可维护性
例如,如果我需要实现不同的功能,通过 do -able 方式,我可以将我的类声明为
public class Man implements Talkable, Thinkable, Laughable
public class Woman implements Talkable, Thinkable, Laughable
另一方面,如果我们基于对象创建接口,我们可以将其用作
public class Man implements Human
public class Woman implements Human
我们也可以将它用于多态性目的。
Human man = new Man();
【问题讨论】:
-
这方面的标准主要是特定于语言的,有时还取决于程序员和组织中的标准。
标签: oop architecture interface naming