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# 2008 Express Edition 编写的猜数字游戏
    话说三层
    在asp.net 1.1 中使用Ajax
    vs2005 调试时出现“无法附加。绑定句柄无效”的解决办法
    解决“你可能没有权限使用网络资源”的问题
    html&js 在firefox与IE中呈现存在差异的解决方法总结
    sql 事务 全攻略
    mssql的TSQL教程(从建登陆到建库、表和约束)(1)
    数据库练习题
    用批处理附加数据库
  • 原文地址:https://www.cnblogs.com/wyBlog117/p/4543645.html
Copyright © 2011-2022 走看看