本帖最后由 wwwconsumer 于 2015-6-13 06:54 编辑
世界上很多组织致力于标准化工作,标准化可以增强产品的通用性,使产品应用更加方便。在软件领域,实现标准化的一种方法就是制定统一的接口(Interfeace).比如,很多银行都会编写自己的账户系统,但他们都愿意使用相同的接口,以便实现不同银行系统之间的转账业务。在本论坛上,我看到了本坛主苏飞准备开讲接口一章,但迟迟没有公开讲课内容。而本人又是初学,实在也不知从哪里举例。只好将本人正在学习的《叩响C#之门》(梁斌玉编著,电子工业出版社)之中的“接口”一节原样抄录,里面的版权属于原作者,本人只是为了方便自己学习而依葫芦哦画瓢进行了模仿而已。
首先,我们创立一个Ibank的项目,然后在菜单栏单击【项目】菜单,选择【添加新项】命令,在弹出的【添加新项】窗口中选择“接口”模板,然后在名称一栏中填入接口的名称“IBankAccount”。
[C#] 纯文本查看 复制代码 //定义接口:银行账户
namespace IBank
{
interface IBankAccount
{
//函数:存款
void PayIn(decimal amount);
//函数:取款
bool WithShowMyself(decimal amount);
//属性:账户余额
decimal Balance { get; }
}
}
现在我们编写一个继承于接口IBankAcount的银行账户类,不同的银行可以有不同的实现方法,但均需实现IBankAccount接口中的所有成员。实际上,接口是对所有的程序开放的,你在创建的类中输入继承符号时,能使用的接口自动会跳出来供你选择。
建立银行账户
具体代码如下:
[C#] 纯文本查看 复制代码 {//类:银行账户
class SaverAccount:IBankAccount
{
//私有变量:余额
private decimal balance;
//函数:存款
public void PayIn(decimal amount)
{
balance += amount;
}
//函数:取款
public bool WithShowMyself(decimal amount)
{
if (balance >= amount)
{
balance -= amount;
return true;
}
else
{
Console.WriteLine("余额不足,取款失败。");
return false;
}
}
//属性:账户余额
public decimal Balance
{
get
{
return balance;
}
}
}
然后我们在主程序中实现存取款功能。
[C#] 纯文本查看 复制代码 static void Main(string[] args)
{
IBankAccount myAccount = new SaverAccount();
ITransferBankAccount yourAccount = new TransferAccount();
myAccount.PayIn(10000);
yourAccount.PayIn(30000);
//myAccount.WithShowMyself(200);
//Console.WriteLine("余额:{0}",myAccount .Balance);
}
运行结果如下:
试着存取款
|