首页 > 编程 > C# > 正文

C#桥接模式完整实例

2019-10-29 21:40:50
字体:
来源:转载
供稿:网友

这篇文章主要介绍了C#桥接模式,以实例形式较为详细的分析了C#桥接模式的实现原理与相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C#桥接模式实现方法。分享给大家供大家参考。具体如下:

C#代码如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. namespace ConsoleApplication1 
  6. public class HandAddressList:HandSetSoft 
  7. public override void Run() 
  8. Console.WriteLine("运行手机通讯录"); 
  9. using System; 
  10. using System.Collections.Generic; 
  11. using System.Linq; 
  12. using System.Text; 
  13. namespace ConsoleApplication1 
  14. public class HandBrandM:HandSetBrand 
  15. public override void Run() 
  16. soft.Run(); 
  17. using System; 
  18. using System.Collections.Generic; 
  19. using System.Linq; 
  20. using System.Text; 
  21. namespace ConsoleApplication1 
  22. public class HandBrandN:HandSetBrand 
  23. public override void Run() 
  24. soft.Run(); 
  25. using System; 
  26. using System.Collections.Generic; 
  27. using System.Linq; 
  28. using System.Text; 
  29. namespace ConsoleApplication1 
  30. public abstract class HandSetBrand 
  31. protected HandSetSoft soft; 
  32. public void SetHandSetSoft(HandSetSoft soft)  
  33. this.soft = soft; 
  34. public abstract void Run(); 
  35. using System; 
  36. using System.Collections.Generic; 
  37. using System.Linq; 
  38. using System.Text; 
  39. namespace ConsoleApplication1 
  40. public class HandSetGame:HandSetSoft 
  41. public override void Run() 
  42. Console.WriteLine("运行手机游戏"); 
  43. using System; 
  44. using System.Collections.Generic; 
  45. using System.Linq; 
  46. using System.Text; 
  47. namespace ConsoleApplication1 
  48. public class HandSetMP3:HandSetSoft 
  49. public override void Run() 
  50. Console.WriteLine("运行手机MP3"); 
  51. using System; 
  52. using System.Collections.Generic; 
  53. using System.Linq; 
  54. using System.Text; 
  55. namespace ConsoleApplication1 
  56. public abstract class HandSetSoft 
  57. public abstract void Run(); 
  58. using System; 
  59. using System.Collections.Generic; 
  60. using System.Linq; 
  61. using System.Text; 
  62. namespace ConsoleApplication1 
  63. class Program 
  64. static void Main(string[] args) 
  65. HandSetBrand ab; 
  66. ab = new HandBrandN(); 
  67. ab.SetHandSetSoft(new HandSetGame()); 
  68. ab.Run(); 
  69. ab.SetHandSetSoft(new HandAddressList()); 
  70. ab.Run(); 
  71. ab = new HandBrandM(); 
  72. ab.SetHandSetSoft(new HandSetGame()); 
  73. ab.Run(); 
  74. ab.SetHandSetSoft(new HandAddressList()); 
  75. ab.Run(); 
  76. ab.SetHandSetSoft(new HandSetMP3()); 
  77. ab.Run(); 
  78. Console.ReadKey(); 

HandAddressList.cs如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. namespace ConsoleApplication1 
  6. public class HandAddressList:HandSetSoft 
  7. public override void Run() 
  8. Console.WriteLine("运行手机通讯录"); 

HandBrandM.cs如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. namespace ConsoleApplication1 
  6. public class HandBrandM:HandSetBrand 
  7. public override void Run() 
  8. soft.Run(); 

HandBrandN.cs如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. namespace ConsoleApplication1 
  6. public class HandBrandN:HandSetBrand 
  7. public override void Run() 
  8. soft.Run(); 

HandSetBrand.cs如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. namespace ConsoleApplication1 
  6. public abstract class HandSetBrand 
  7. protected HandSetSoft soft; 
  8. public void SetHandSetSoft(HandSetSoft soft)  
  9. this.soft = soft; 
  10. public abstract void Run(); 

HandSetGame.cs如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. namespace ConsoleApplication1 
  6. public class HandSetGame:HandSetSoft 
  7. public override void Run() 
  8. Console.WriteLine("运行手机游戏"); 

HandSetMP3.cs如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. namespace ConsoleApplication1 
  6. public class HandSetMP3:HandSetSoft 
  7. public override void Run() 
  8. Console.WriteLine("运行手机MP3"); 

HandSetSoft.cs如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. namespace ConsoleApplication1 
  6. public abstract class HandSetSoft 
  7. public abstract void Run(); 

Program.cs如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. namespace ConsoleApplication1 
  6. class Program 
  7. static void Main(string[] args) 
  8. HandSetBrand ab; 
  9. ab = new HandBrandN(); 
  10. ab.SetHandSetSoft(new HandSetGame()); 
  11. ab.Run(); 
  12. ab.SetHandSetSoft(new HandAddressList()); 
  13. ab.Run(); 
  14. ab = new HandBrandM(); 
  15. ab.SetHandSetSoft(new HandSetGame()); 
  16. ab.Run(); 
  17. ab.SetHandSetSoft(new HandAddressList()); 
  18. ab.Run(); 
  19. ab.SetHandSetSoft(new HandSetMP3()); 
  20. ab.Run(); 
  21. Console.ReadKey(); 

希望本文所述对大家的C#程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表