设计模式入门

设计原则

  • 找出应用中可能需要变化的地方,把这些地方独立出来,不要和那些不需要变化的代码混在一起
  • 针对接口编程,而不是针对实现编程 
  • 多用组合,少用继承。“有一个”可能比“是一个”更好。

策略模式

 策略模式定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。

@Setter
public abstract class Duck {

    protected FlyBehavior flyBehavior;

    protected QuackBehavior quackBehavior;

    void swim() {
        System.out.println("swim");
    }

    abstract void display();

    public void performFly() {
        flyBehavior.fly();
    }

    public void performQuack() {
        quackBehavior.quack();
    }

    /*void fly() {}

    void quack() {}*/
}
原文地址:https://www.cnblogs.com/zerodsLearnJava/p/9905262.html