策略模式

<?php
// 策略模式适用于使用不同策略达到同一个目的。
// 例如去学校,可以开车,可以坐车
// 例如过滤字符串,可以是去掉特殊字符,可以是过滤脏话
// php 技术群:781742505

/**
 * Interface Vehicle
 */
interface Vehicle
{
    /**
     * @return mixed
     */
    public function by();
}

/**
 * Class Plane
 */
class Plane implements Vehicle
{
    /**
     * @return mixed|string
     */
    public function by(){
        return 'plane';
    }
}

/**
 * Class Train
 */
class Train implements Vehicle
{
    /**
     * @return mixed|string
     */
    public function by(){
        return 'train';
    }
}


/**
 * Class People
 */
class People
{
    /**
     * @param Vehicle $vehicle
     *
     * @return mixed
     */
    public function trip(Vehicle $vehicle)
    {
        return $vehicle->by();
    }
}

$jack = new People();
echo $jack->trip(new Train());

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值