Program.cs 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace AdapterPattern
  7. {
  8. class Program
  9. {
  10. static void Main(string[] args)
  11. {
  12. //在未定义充电标准之前,各个厂家充电线的实现各不相同,但都可以为自家品牌设备充电
  13. USBLine usbLine = new USBLine();
  14. usbLine.Charge();
  15. Console.WriteLine("-------------------");
  16. //随着电器设备越来越多,各家的充电设备不能通用,造成很多不便,为了共用,厂家联合推出标准充电接口。
  17. //USB-Micro实现标准接口。
  18. IChargingLine microLine = new USBMicroLine();
  19. microLine.Charging();
  20. Console.WriteLine("-------------------");
  21. //现在手里有一个未实现充电标准的充电线,通过适配器,为小米5设备充电
  22. Console.WriteLine("对象适配器模式:");
  23. IChargingLine typeCLineAdapter = new USBTypecLineAdapter(usbLine);
  24. typeCLineAdapter.Charging();
  25. Console.WriteLine("-------------------");
  26. //现在手里有一个未实现充电标准的充电线,通过适配器,为苹果设备充电
  27. Console.WriteLine("类适配器模式:");
  28. IChargingLine lightingLineAdapter = new USBlightingLineAdapter();
  29. lightingLineAdapter.Charging();
  30. Console.ReadLine();
  31. }
  32. }
  33. }