接口中的构造函数

Jus*_*tMe 1 delphi coding-style interface delphi-xe2

我知道 - 我不能,但是.

我希望所有将实现我的接口的类具有相同的所有者(通常在构造函数中定义).这样做的最佳做法是什么?

我应该使用一些基本抽象类或类似的东西吗?

Dav*_*nan 7

接口定义实现者和消费者之间的契约.

该合同的一部分由编译器强制执行.例如,接口的所有实现都具有特定名称的必需功能,这些功能采用特定参数.

但是接口的另一部分不是由编译器强制执行的.这是接口文档中描述的合同的一部分.您可以决定告诉所有实现者他们必须遵守哪些规则就足够了.许多图书馆采取这种立场.Windows API就是一个突出的例子.

如果您通过代码执行死机,那么界面无法帮助您.你需要在代码中表达约束的东西,在这种情况下需要实现.这意味着你需要使用一个类.一个(几乎)抽象的基类可以完成它.该类的唯一具体部分将强制执行所有权约束.该类的其余部分将是一系列抽象的虚拟方法.这不是Delphi关键字隐含的界面.但是,它是语义术语的界面.