设计模式 之 工厂模式

                                           

工厂模式可以屏蔽接口的具体实现,调用的时候只关注接口的具体名称而无需关注实现。这是他的优点。如果增加其他的功能,只需要实现接口即可。同样的,当需要大量的额功能是,这时候就需要创建多个类,增加了类的数目,也为系统带来了复杂性。下面的代码是演示工厂设计模式。

场景:当我们调用接口的时候我们根据传递进来的进口通信代码来判断是要调用RPC接口还是REST接口。

public interface CommunicaeProtoco {
    /**
     *
     * @param protocoCode 通信协议代码
     * @return
     */
    Object selectProtoco(String protocoCode);
}

下面的是实现:

public class RestProtoco implements CommunicaeProtoco {
    @Override
    public Object selectProtoco(String protocoCode) {
        return "restful---->";
    }
}
public class RPCProtoco implements CommunicaeProtoco{

    @Override
    public Object selectProtoco(String protocoCode) {
        return "RPC---->";
    }
}

工厂类:

public class CommunicaeProtocoFactory {

    public CommunicaeProtoco getProtoco(String protocoCode){
        if(protocoCode!=null){
            if("rpc".equals(protocoCode)){
                return new RPCProtoco();
            }else if("rest".equals(protocoCode)){
                return new RestProtoco();
            }
        }
        return null;
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值