zoukankan      html  css  js  c++  java
  • C#中接口

    interface   IPrint   {  
          void   Print();  
      }  

      class   A   :   IPrint   {  
          public   void   Print()   {  
              System.Console.WriteLine("A");  
          }  
      }  

      class   B   :   IPrint   {  
          public   void   Print()   {  
              System.Console.WriteLine("B");  
          }  
      }  

      class   AppMain   {  
          public   static   void   Print(IPrint   obj)   {  
              obj.Print();  
          }  
          public   static   void   Main()   {  
              Print(new   A());   //   display   A  
              Print(new   B());   //   display   B  
          }  
      }

    在这个例子中,IPrint 接口中定义了Print方法,但没有实现方法体.
    类A和类B都继承了IPrint接口,并且实现了不同的Print方法.
    在AppMain   中调用AB,获得不同的打印结果

    //定义打印机接口 
      interface     Iprint{ 
          bool     PrintData(string     data); 
        } 
      
      //定义打印机类A,实现接口 
      class     PrintA:Iprint{ 
          public   virtual   bool     PrintData(string     data){ 
              //具体业务逻辑略 
            } 
        } 
      
        定义打印机类B,实现接口 
      class     PrintB:Iprint{ 
          public   virtual   bool     PrintData(string     data){ 
              //具体业务逻辑略 
            } 
        } 
      
      //定义工厂类 
      class     PrintFactory{ 
          public     Iprint     CreatePrint(){ 
            //返回一个由打机类A,或B实现的接口,比如 
              return   new     PrintA(); 
            } 
        } 
      
      //通过工厂类,调用打印机 
      private   void     button1_Click(object     sender,EventArgs     e){ 
            PrintFactory     myFactory=new     PrintFactory(); 
            Iprint     myPrint=myFactory.CreatePrint(); 
            myPrint.PrintData("这样做很方便啊"); 
        }  

  • 相关阅读:
    Asp.Net中Word,Excel等office com组件操作权限的问题 ————转自rainpig2008
    正则表达式摘录
    html5 Canvas画图2:画线条
    彻底理解函数声明与函数表达式优先级问题
    javascript定义变量和优先级的问题
    html5 Canvas画图4:填充和渐变
    讨论下canvas画椭圆的方法
    html5 Canvas画图3:1像素线条模糊问题
    [推荐]实在受不了canvas的语法了!我要让他支持链式语法!
    html5 Canvas画图5:画曲线之arc
  • 原文地址:https://www.cnblogs.com/wyBlog117/p/4543645.html
Copyright © 2011-2022 走看看