上实现的方法类型声明它没有类型声明
问题描述:
我有一个接口,像这样:上实现的方法类型声明它没有类型声明
interface A {
static function from($object): self;
}
在类实现接口:
class B implements A {
static function from(\C $object): self{ // This is highlighted as an error
return new self();
}
}
我不能声明类型时,接口没有声明一个类型?
答
当接口没有声明类型时,我可以不声明一个类型吗?
总之:没有。
按照该文档为interfaces(这似乎很清楚的给我):
实现接口必须使用相同的方法签名,在接口中定义的类。不这样做会导致致命的错误。
如果你提供了更多的细节,为什么你认为你需要做到这一点,我们也许可以给出一个更加有用的答案,但揭掉只是要求一个是/否的问题,这个问题的答案是 - 正如我说 - “不”。
为什么你只是不读官方文档[PHP接口](http://php.net/manual/en/language.oop5.interfaces.php),这真的“有时”帮助。 – LkPark