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("这样做很方便啊"); 
        }  

  • 相关阅读:
    [C#性能简析]泛型集合的使用
    理解自定义特性(Attribute)
    C语言第1次作业2.0版
    C语言第3次作业
    C语言第1次作业
    C语言第2次作业
    kubernetes 部署metricserver
    安装nginx
    C# Winform应用程序内存回收
    asp.net 数据库访问操作类
  • 原文地址:https://www.cnblogs.com/wyBlog117/p/4543645.html
Copyright © 2011-2022 走看看