zoukankan      html  css  js  c++  java
  • 桥接模式之装甲坦克

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.Threading.Tasks;

    namespace bridge

    {    

    public interface Tank  

       {      

           void shut();     

           void fangpao();         

            void run();    

        }   

      public class T30 : Tank

        {

            public void shut()    

         {         

        Console.WriteLine("T30 shunt");       

       }

            public void fangpao()   

          {      

           Console.WriteLine("T30 fangpao");    

         }

            public void run()     

        {       

          Console.WriteLine("T30 run");

            }   

      }     public class T40 : Tank   

      {

            public void shut()       

      {          

       Console.WriteLine("T40 shunt");   

          }

            public void fangpao()    

         {         

        Console.WriteLine("T40 fangpao");    

         }

            public void run()      

       {          

       Console.WriteLine("T40 run");     

        }  

       }  

       public  abstract class TankAdapter

        {

            public Tank TankHelper;     

       public abstract void Doshut();   

         public abstract  void Dofangpao();      

      public abstract  void Dorun();            

        }

        public class MobileTan : TankAdapter   

      {

            public override void Doshut()         {             Console.WriteLine("mobile");             TankHelper.shut();         }

            public override void Dofangpao()         {             TankHelper.fangpao();         }

            public override void Dorun()         {             TankHelper.run();         }     }     public class PcTank : TankAdapter     {

            public override void Doshut()         {             Console.WriteLine("pc tank");             TankHelper.shut();         }

            public override void Dofangpao()         {             TankHelper.fangpao();         }

            public override void Dorun()         {             TankHelper.run();         }     }

        public class Program     {         static void Main(string[] args)         {             TankAdapter tank = new PcTank();             tank.TankHelper = new T40();             tank.Dofangpao();             tank.Dorun();             tank.Doshut();             Console.WriteLine(" ----------------------");             TankAdapter tank1 = new MobileTan();             tank1.TankHelper = new T30();             tank1.Dofangpao();             tank1.Dorun();             tank1.Doshut();             Console.ReadKey();         }     } }

  • 相关阅读:
    「UVA12293」 Box Game
    「CF803C」 Maximal GCD
    「CF525D」Arthur and Walls
    「CF442C」 Artem and Array
    LeetCode lcci 16.03 交点
    LeetCode 1305 两棵二叉搜索树中的所有元素
    LeetCode 1040 移动石子直到连续 II
    LeetCode 664 奇怪的打印机
    iOS UIPageViewController系统方法崩溃修复
    LeetCode 334 递增的三元子序列
  • 原文地址:https://www.cnblogs.com/kexb/p/3667941.html
Copyright © 2011-2022 走看看