策略模式+工厂方法消除if...else
今天来讲一下如何通过策略模式和工厂方法来消除累赘的if...else,具体什么是策略模式,大家可以自行百度学习,我就不再这里做过多的介绍了。 注意:如果业务场景简单,建议使用if...else,因为代码逻辑简单,便于理解 Eat.java /** * 策略接口 * */ public interface Eat { public void eatFruit(String fruit); } EatApple.java /** * 具体的策略类:吃苹果 */ public class EatApple implements Eat{ @Override public void eatFruit(String fruit) { System.out.println("吃苹果"); } } EatBanana.java /** * 具体的策略类:吃香蕉 */ public class EatBanana implements Eat { @Override public void eatFruit(String fruit) { System.out.println("吃香蕉"); } } EatPear.java /** * 具体的策略类:吃梨 */ public class EatPear implements Eat { @Override public void eatFruit