程序能运行,但不能输入结果
using System;using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Xuwanshan
{
public class OverdraftEventArgs : EventArgs
{
public OverdraftEventArgs(int balance, int qukuan)
{
_balance = balance;
_qukuan = qukuan;
}
public int Balance
{
get
{
return _balance;
}
}
public int QuKuan
{
get
{
return _qukuan;
}
}
protected int _balance;
protected int _qukuan;
}
public class Account
{
public delegate void OverdraftEventHandler(object sender, OverdraftEventArgs e);
public event OverdraftEventHandler OnOverdraftHandler;
public Account(int anInitialBalance)
{
_balance = anInitialBalance;
}
public int Balance
{
get
{
return _balance;
}
}
public void Deposit(int aDeposit)
{
if (aDeposit < 0)
throw new ArgumentOutOfRangeException();
_balance += aDeposit;
}
public bool Qukuan(int aDebit)
{
if (aDebit < 0)
throw new ArgumentOutOfRangeException();
if (aDebit < _balance)
{
_balance -= - aDebit;
return true;
}
OverdraftEventArgs args = new OverdraftEventArgs(_balance, aDebit);
OnOverdraft(args);
return false;
}
public void AddOnOverdraft(OverdraftEventHandler handler)
{
OnOverdraftHandler += handler;
}
protected void OnOverdraft(OverdraftEventArgs e)
{
if (OnOverdraftHandler != null)
OnOverdraftHandler(this, e);
}
protected int _balance;
}
public class Moni
{
public static void Main()
{
Account myAccount = new Account(100);
Account.OverdraftEventHandler handler = null;
handler = new Account.OverdraftEventHandler(OnOverdraft);
myAccount.AddOnOverdraft(handler);
}
public static void OnOverdraft(object sender, OverdraftEventArgs e)
{
Console.WriteLine("an overdraft occurred.");
Console.WriteLine("the account balance is {0}.", e.Balance);
Console.WriteLine("qu kuan shi {0}.", e.QuKuan);
}
}
}
补充:.NET技术 , C#