工厂模式之简单应用

该博客介绍了如何在对接不同商业银行的单笔付款接口时,通过工厂模式来解决接口字段不统一的问题。示例中创建了统一的支付接口`Pay`,并实现了中行和银联的单笔付款类。接着,定义了一个`PayFactory`用于根据渠道创建相应的支付对象,从而实现代码的解耦合。在测试用例中,展示了如何通过工厂获取并调用具体银行的单笔付款方法。
摘要由CSDN通过智能技术生成

在工作开发中可能会用到一些设计模式来设计代码,比如对接各个商业银行时都使用一个单笔付款,但是接口字段又不统一,可以考虑工厂模式去创建对象

1.创建统一的支付接口

package com.shineyue.shijimoshi.gongchangmoshi;


public interface Pay {

    /**
     * 单笔付款
     *
     */
    void singlePayment();
}

2.创建中行的单笔付款

package com.shineyue.shijimoshi.gongchangmoshi;


public class BOCPay implements Pay {

    /**
     * 单笔付款
     *
     *
     */
    @Override
    public void singlePayment() {
        System.out.println("中行单笔付款");
    }
}

3.创建银联的单笔付款

package com.shineyue.shijimoshi.gongchangmoshi;


public class UPPay implements Pay {

    /**
     * 单笔付款
     *
     *
     */
    @Override
    public void singlePayment() {
        System.out.println("银联单笔付款");
    }
}

4.创建工厂

package com.shineyue.shijimoshi.gongchangmoshi;


public class PayFactory {

    public static Pay singlePayment(String channal){
        if (channal==null){
            return null;
        }if (channal.equals("boc")){
            return new BOCPay();
        }if (channal.equals("up")){
            return new UPPay();
        }
        return null;
    }
}

5.测试用例

public class TestSinglePay {

    public static void main(String[] args) {

        Pay pay = PayFactory.singlePayment("boc");
        pay.singlePayment();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值