下面是一个使用工厂模式和策略模式的实例,用来根据来源系统不同执行不同的操作,以减少if语句的使用:

首先,创建一个接口SourceSystem,定义一个方法execute()用来执行操作:

public interface SourceSystem {
    void execute();
}

然后,创建两个实现SourceSystem接口的类,分别是SystemA和SystemB:

public class SystemA implements SourceSystem {
    @Override
    public void execute() {
        System.out.println("执行SystemA的操作");
    }
}

public class SystemB implements SourceSystem {
    @Override
    public void execute() {
        System.out.println("执行SystemB的操作");
    }
}

接下来,创建一个工厂类SourceSystemFactory,用来根据来源系统的不同返回对应的SourceSystem对象:

public class SourceSystemFactory {
    public static SourceSystem getSourceSystem(String source) {
        if (source.equalsIgnoreCase("SystemA")) {
            return new SystemA();
        } else if (source.equalsIgnoreCase("SystemB")) {
            return new SystemB();
        }
        return null;
    }
}

最后,创建一个使用工厂模式和策略模式的客户端类Main,用来根据不同的来源系统执行不同的操作:

public class Main {
    public static void main(String[] args) {
        String source = "SystemA"; // 根据来源系统设置不同的值
        SourceSystem sourceSystem = SourceSystemFactory.getSourceSystem(source);
        if (sourceSystem != null) {
            sourceSystem.execute();
        }
    }
}

通过使用工厂模式和策略模式,我们可以根据来源系统的不同,动态地创建对应的SourceSystem对象,并执行相应的操作,避免了大量的if语句

java 根据来源系统不同采用工厂模式和策略模式实现编程可以减少if的使用的实例

原文地址: http://www.cveoy.top/t/topic/h27m 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录