집 >백엔드 개발 >C#.Net 튜토리얼 >C# 디자인 패턴의 브리지 모드에 대한 자세한 코드 설명
추상화와 구현을 독립적으로 변경하도록 하세요
public abstract class Game { public Game(string name) { this.Name = name; } public Play m_play { get; set; } public string Name { get; set; } public virtual void PlayForFun() { this.m_play.PlayIt(this.Name); } } public class War3Game : Game { public War3Game(string name) : base(name) { } public override void PlayForFun() { base.PlayForFun(); } } public class KofGame : Game { public KofGame(string name) : base(name) { } public override void PlayForFun() { base.PlayForFun(); } } public class CsGame : Game { public CsGame(string name) : base(name) { } public override void PlayForFun() { base.PlayForFun(); } } public abstract class Play { public virtual void PlayIt(string gameName) { } } public class CpuPlay : Play { public override void PlayIt(string gameName) { Console.WriteLine("play" + gameName + " game on computer"); } } public class IPadPlay : Play { public override void PlayIt(string gameName) { Console.WriteLine("play" + gameName + " game on ipad"); } } public class IPhonePlay : Play { public override void PlayIt(string gameName) { Console.WriteLine("play " + gameName + " game on iphone"); } }
Call:
Game g = new KofGame("kof97"); g.m_play = new IPadPlay(); g.PlayForFun();
위는 C# 디자인 패턴의 브리지 모드에 대한 자세한 코드 설명 및 관련 내용입니다. 내용 PHP 중국어 홈페이지(www.php.cn)를 주목해주세요!