php中的显式接口实现

时间:2012-04-11 09:14:01

标签: php interface

由于我是C# - /。NET-guy,我习惯于显式接口实现 - 就像这样:

public interface IBar
{
    bool Bacon();
}

public class Foo : IBar
{
    bool IBar.Bacon() {}
}

问题:
这可以用php吗?

修改
为了澄清,这是隐式(虽然我想要的,以及上面例子中的内容是显式):

public class Foo : IBar
{
    bool Bacon() {}
}

2 个答案:

答案 0 :(得分:5)

PHP支持接口,所以可以:http://php.net/manual/en/language.oop5.interfaces.php

PHP不区分隐式和显式实现。

答案 1 :(得分:-1)

鉴于下面的代码,我非常坚持与代码相关的任务:

<块引用>

当一个 ReptileEgg 孵化时,将创建一个相同的新爬行动物 产卵的物种。

当 Reptile 是一个界面时,如何在 ->hatch 内部创建一个新的爬行动物?这是一项家庭作业,我无法及时弄清楚。它会让我发疯,直到我回去弄清楚。

<?php
interface Reptile
{
    public function layEgg() : ReptileEgg;
}

class FireDragon implements Reptile
{
    public function layEgg() : ReptileEgg {
        
    }
}

class ReptileEgg
{
    public function __construct(string $reptileType)
    {
        
    }
    
    public function hatch() : ? Reptile
    {
        return null;
    }
}