接口可以强制执行类必须使用的特征吗?

时间:2012-07-20 18:52:18

标签: php

我的问题很简单,一个接口可以强制执行哪个特性必须使用?

我问的原因是我想象一个命名空间的接口集,它引用了具有相同名称的特征,这些特征在不同的命名空间中存在不同的实现,以在整个应用程序中创建复杂但通用的操作。 - 感觉?

2 个答案:

答案 0 :(得分:1)

Traits本质上是复制粘贴的代码,不应该考虑接口或继承。接口无法强制执行特征。但是,特征可以作为接口的实现。

您可以拥有由其他特征组成的特征。或者,您可以拥有一个使用多个特征的抽象基类。这两种解决方案都可能是您正在寻找的东西。

答案 1 :(得分:1)

不,你不能这样做。

接口只需要一个类来实现方法。它对于是否存在这样的打包实现(特征)一无所知。