使用场景: 将现有系统应用到新系统中,但是两个系统接口是不相同的,这里使用adapter模式类解决这个问题。 实现代码: // 现有类 class ExistingClass { public void SpecificRequest1() { } public void SpecificRequest2() { } // ... } // 新环境所使用的接口 interface ITarget { void Request(); } // 另外一个系统 class MySystem { public void Process(ITarget target) // 面向接口编程 { // 这里可以直接传入adapter作为参数, } } class Adapter : ITarget { private ExistingClass existingClass; #region ITarget Members void ITarget.Request() { // 这里实现逻辑 existingClass.SpecificRequest1(); existingClass.SpecificRequest2(); } #endregion }