c#使用接口

来源:互联网 发布:免费交友软件下载 编辑:程序博客网 时间:2024/05/18 00:25
c#使用接口--帮助你更好的理解接口

前言:这是一篇介绍关于接口使用的随笔,你要问我接口是何物,那请你亲自查一下,这里只是介绍了简单有趣的例子,为了让你更快的接受接口的概念。

正文:这个例子建立在银行账户的基础上,这个接口包含一个存款和取款的方法,以及一个返回余额的属性。为了简单,我把这个接口和待会儿测试的两个银行类放在了一个项目里,在实际中,银行类应该放在不同银行的不同机器里,这就涉及到remoting技术,这里暂不讨论。下面我们就开始吧!

1、创建工程:c# 控制台应用程序,名字我们叫做ITest;然后项工程中添加一个接口类:IBankAccount代码如下:

 


using System;
using System.Collections.Generic;
using System.Text;

namespace ITest
{
    
interface IBankAccount
     {
        
void PayIn(decimal amount);//存入金额
        bool WithDraw(decimal amount);//取出金额
        decimal Balance//剩余金额
         {
            
get;
         }
     }
}

 

然后,我们就可以开始为不同的银行编写不同的类了,下面是银行1的类Bank1:代码很简单,我就不做注释了

 


namespace ITest
{
    
class Bank1:IBankAccount
     {
        
private decimal balance;
        
public void PayIn(decimal amount)
         {
             balance
+= amount;
         }
        
public bool WithDraw(decimal amount)
         {
            
if (balance >= amount)
             {
                 balance
-= amount;
                
return true;
             }
            
else
             {
                 Console.WriteLine(
"Bank1余额不足");
                
return false;
             }
         }
        
public decimal Balance
         {
            
get
             {
                
return balance;
             }
         }
        
public override string ToString()
         {
            
return string.Format("Bank1储户的余额为:{0}", balance);
         }
     }
}

 

然后添加银行2的类,代码同上,只是细节地方改一下把Bank1改称Bank2即可。

2、最后在主要代码中,使用接口和类:

 


namespace ITest
{
    
class Program
     {
        
static void Main(string[] args)
         {
             IBankAccount bankone
= new Bank1();
             IBankAccount banktwo
= new Bank2();
             bankone.PayIn(
200);//往bank1里存入200
             bankone.WithDraw(50);//从bank1里提取50
             Console.WriteLine(bankone.ToString());//输出余额

             banktwo.PayIn(
300);
             banktwo.WithDraw(
305);
             Console.WriteLine(banktwo.ToString());
             Console.ReadKey();
         }
     }
}

 

至此,整个接口就完成了,你只需调适即可。效果如下:

原创粉丝点击