什么是多态

2019-07-05  本文已影响0人  pengtoxen

class Ball
{
    public function play()
    {
    }
}

class Football extends Ball
{
    public function play()
    {
        echo "play football<hr/>";
    }
}

class Basketball extends Ball
{
    public function play()
    {
        echo "play basketball<hr/>";
    }
}

class Job
{
    public function __construct(Ball $ball)
    {
        $ball->play();
    }
}

new Job(new Football()); //play football
new Job(new Basketball()); //play basketball

多态就是运行时确定调用的是哪个实例的方法
上面的例子中,play方法因传入的实例不同打印出了不同的结果.这就是多态的体现

上一篇 下一篇

猜你喜欢

热点阅读