创新型设计模式
创建型
- 抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。
- Biluder生成器:将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以创建不同的表示。
结构型
- 适配器:将一个类的接口转换成客户希望的另一个接口。
- bridge桥接:将抽象部分与实现部分分离,使他们可以独立的变化,客户并不知道。
- Composite组合:将对象组合成树型表示部分和整体的层次结构,使得单个对象和组合对象具有一致性。
- Decorator装饰:动态的给一个对象添加一些额外的职责
行为型
- 责任链:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。
- Command命令:将一个请求封装为一个对象,从而使得不同的请求对客户进行参数化。对请求排队或记录请求日志,以及支持可撤销的操作。
- 迭代器:提供一种方法顺序访问一个聚合对象中的各个元素,且不需要暴露该对象的内部表示。
- 中介者:用一个中介对象来封装一系列的对象交互,中介者不需要显示的相互调用,从而使其耦合松散,而且可以独立的改变他们之间的交互。
编程题
package leetcode;
import java.util.Arrays;
import java.util.Scanner;
public class juzhenzhuanzhi {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.print