/// <summary> /// 我们买的电器插头是2个孔,但是我们买的插座只有3个孔的,我们想把电器插在插座上的话就需要一个插头适配器 /// 客户端,客户想要把2个孔的插头 转变成三个孔的插头,这个转变交给适配器就好,既然适配器需要完成这个功能,所以它必须同时具体2个孔插头和三个孔插头的特征 /// </summary> public class Adapter { static void Main() { //现在客户端可以通过电适配要使用2个孔的插头了 IThreeHole three = new Converter(); three.Request(); } }
/// <summary> /// 三个孔的插头 /// </summary> public interface IThreeHole { public void Request(); }
/// <summary> /// 两个孔的插头 /// </summary> public abstract class TwoHole { public void SpecificalRequest(); }
/// <summary> /// 适配器,提供了三个孔插头的行为,但其本质是调用两个孔的插头的方法 /// </summary> public class Converter : TwoHole, IThreeHole { public void Request() { SpecificalRequest(); } }