C#桥接模式完整实例

Nissa ·
更新时间:2024-11-13
· 760 次阅读

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

C#代码如下:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class HandAddressList:HandSetSoft { public override void Run() { Console.WriteLine("运行手机通讯录"); } } } using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class HandBrandM:HandSetBrand { public override void Run() { soft.Run(); } } } using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class HandBrandN:HandSetBrand { public override void Run() { soft.Run(); } } } using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public abstract class HandSetBrand { protected HandSetSoft soft; public void SetHandSetSoft(HandSetSoft soft) { this.soft = soft; } public abstract void Run(); } } using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class HandSetGame:HandSetSoft { public override void Run() { Console.WriteLine("运行手机游戏"); } } } using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class HandSetMP3:HandSetSoft { public override void Run() { Console.WriteLine("运行手机MP3"); } } } using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public abstract class HandSetSoft { public abstract void Run(); } } using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { HandSetBrand ab; ab = new HandBrandN(); ab.SetHandSetSoft(new HandSetGame()); ab.Run(); ab.SetHandSetSoft(new HandAddressList()); ab.Run(); ab = new HandBrandM(); ab.SetHandSetSoft(new HandSetGame()); ab.Run(); ab.SetHandSetSoft(new HandAddressList()); ab.Run(); ab.SetHandSetSoft(new HandSetMP3()); ab.Run(); Console.ReadKey(); } } }

HandAddressList.cs如下:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class HandAddressList:HandSetSoft { public override void Run() { Console.WriteLine("运行手机通讯录"); } } }

HandBrandM.cs如下:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class HandBrandM:HandSetBrand { public override void Run() { soft.Run(); } } }

HandBrandN.cs如下:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class HandBrandN:HandSetBrand { public override void Run() { soft.Run(); } } }

HandSetBrand.cs如下:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public abstract class HandSetBrand { protected HandSetSoft soft; public void SetHandSetSoft(HandSetSoft soft) { this.soft = soft; } public abstract void Run(); } }

HandSetGame.cs如下:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class HandSetGame:HandSetSoft { public override void Run() { Console.WriteLine("运行手机游戏"); } } }

HandSetMP3.cs如下:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class HandSetMP3:HandSetSoft { public override void Run() { Console.WriteLine("运行手机MP3"); } } }

HandSetSoft.cs如下:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public abstract class HandSetSoft { public abstract void Run(); } }

Program.cs如下:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { HandSetBrand ab; ab = new HandBrandN(); ab.SetHandSetSoft(new HandSetGame()); ab.Run(); ab.SetHandSetSoft(new HandAddressList()); ab.Run(); ab = new HandBrandM(); ab.SetHandSetSoft(new HandSetGame()); ab.Run(); ab.SetHandSetSoft(new HandAddressList()); ab.Run(); ab.SetHandSetSoft(new HandSetMP3()); ab.Run(); Console.ReadKey(); } } }

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

您可能感兴趣的文章:C++设计模式之桥接模式php设计模式 Bridge (桥接模式)用代码和UML图化解设计模式之桥接模式的深入分析c#桥接模式(bridge结构模式)用法实例深入理解JavaScript系列(44):设计模式之桥接模式详解举例讲解Python中的Null模式与桥接模式编程深入解析iOS应用开发中对设计模式中的桥接模式的使用简单了解C#设计模式编程中的桥接模式深入解析C#设计模式中对桥接模式的具体运用轻松掌握Java桥接模式



桥接 桥接模式 C#

需要 登录 后方可回复, 如果你还没有账号请 注册新账号