单例模式,命令模式,适配器模式,外观模式

1.单例模式,很简单,双锁

2.命令模式(用在队列请求,线程池,数据库日志等)

经典的命令模式包括4个角色:

Command:定义命令的统一接口

ConcreteCommand:Command接口的实现者,用来执行具体的命令,某些情况下可以直接用来充当Receiver。

Receiver:命令的实际执行者

Invoker:命令的请求者,是命令模式中最重要的角色。这个角色用来对各个命令进行控制。

/// Command角色
interface Command {
    void Execute();
}
/// ConcreteCommand角色
class ConcreteCommand implements Command {
    private Receiver receiver = null;

    public ConcreteCommand(Receiver receiver) {
        this.receiver = receiver;
    }

    public void Execute() {
        receiver.DoA();
        receiver.DoB();
    }
}
/// Receiver角色
class Receiver {
    public void DoA() {
        System.err.println("DoA");
    }

    public void DoB() {
        System.err.println("DoB");
    }
}
/// Invoker角色
class Invoker {
    private Command command = null;

    //设置命令
    public void SetCommand(Command command) {
        this.command = command;
    }

    //执行命令
    public void RunCommand() {
        command.Execute();
    }
}
/// 客户端调用
public class Test {
    public static void main(String[] args) {
        Receiver receiver = new Receiver();
        Invoker invoker = new Invoker();
        invoker.SetCommand(new ConcreteCommand(receiver));
        invoker.RunCommand();
    }
}

3.适配器模式:将一个类的接口转换成客户希望的另一个接口。适配器模式让那些接口不兼容的类可以一起工作

https://www.cnblogs.com/songyaqi/p/4805820.html

4.外观模式:提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。

猜你喜欢

转载自blog.csdn.net/weixin_43245707/article/details/85414725