Decouple an abstraction from its implementation so that the two can vary independently.
将抽象与实现解耦,以便二者独立变化。
Abstraction) Request())。RefinedAbstraction) Implementor) RequestImpl()),不必与抽象类所声明的接口 (Request()) 一致。ConcreteImplementorA, ConcreteImplementorB)