C# 银行账户';不包含';银行账户
这是银行账户类别:C# 银行账户';不包含';银行账户,c#,C#,这是银行账户类别: namespace BankAccount { public abstract class BankAccount { protected static int numberOfAccounts = 100001; private double balance; private string owner; private string accountNumber; public
namespace BankAccount
{
public abstract class BankAccount
{
protected static int numberOfAccounts = 100001;
private double balance;
private string owner;
private string accountNumber;
public BankAccount()
{
balance = 0;
accountNumber = numberOfAccounts + "";
numberOfAccounts++;
}
public BankAccount(string name, double amount)
{
owner = name;
balance = amount;
accountNumber = numberOfAccounts + "";
numberOfAccounts++;
}
public BankAccount(BankAccount oldAccount, double amount)
{
owner = oldAccount.owner;
balance = amount;
accountNumber = oldAccount.accountNumber;
}
}
}
namespace BankAccount
{
class CheckingAccount : BankAccount
{
int fee = 15;
public CheckingAccount(string name, double amount)
{
base.BankAccount(name, amount);
}
public new bool Withdraw(double amount)
{
double totalAmount = amount + fee;
return base.Withdraw(totalAmount);
}
}
}
这是支票帐户类:
namespace BankAccount
{
public abstract class BankAccount
{
protected static int numberOfAccounts = 100001;
private double balance;
private string owner;
private string accountNumber;
public BankAccount()
{
balance = 0;
accountNumber = numberOfAccounts + "";
numberOfAccounts++;
}
public BankAccount(string name, double amount)
{
owner = name;
balance = amount;
accountNumber = numberOfAccounts + "";
numberOfAccounts++;
}
public BankAccount(BankAccount oldAccount, double amount)
{
owner = oldAccount.owner;
balance = amount;
accountNumber = oldAccount.accountNumber;
}
}
}
namespace BankAccount
{
class CheckingAccount : BankAccount
{
int fee = 15;
public CheckingAccount(string name, double amount)
{
base.BankAccount(name, amount);
}
public new bool Withdraw(double amount)
{
double totalAmount = amount + fee;
return base.Withdraw(totalAmount);
}
}
}
对于,base.BankAccount(名称、金额)代码>我遇到错误
“BankAccount”不包含“BankAccount”的定义
银行帐户是基类,支票帐户继承基类。当我删除base关键字时,它会说:
不可调用的成员不能用作方法
在main中,我创建了一个对象,我想在main中接受一个值——一个字符串和一个double,然后将其发送到CheckingAccount
类,CheckingAccount
构造函数应该运行,然后将值发送到BankAccount
构造函数并进行计算
我如何修复错误
“BankAccount”不包含“BankAccount”的定义
?
谢谢,C#不像Java那样在花括号之间调用super(),需要添加“:base(name,Amout)”来调用超类构造函数。像这样:
public CheckingAccount(string name, double amount) : base(name,amount)
{
}
你可以这样称呼它
public CheckingAccount(string name, double amount) : base (name, amount)
{
}
public CheckingAccount(字符串名,双倍金额):base(name,amount){}是的,我正在尝试为CheckingAccount创建一个对象:CheckingAccount myCheckingAccount=new CheckingAccount(“Benjamin Franklin”,1000);并将值输入CheckingAccount构造函数,然后将值发送到BankAccount(“Benjamin Franklin”,1000);你认为base.BankAccount
到底有什么作用?Main中输入的值应该发送到CheckingAccount构造函数,然后发送到BankAccount类构造函数。@Daniel你应该将其作为答案添加,而不是注释感谢它做了很多工作这不是正确的答案,可能会增加或吸引选票。我建议在它被否决之前删除它。你是对的,我只是想帮助你,我没有阅读整个构造器,在最后看到了基础,我编辑了我的答案,我不关心否决票,我只是来帮助和分享我的经验和想法。我得到了你。我相信每个试图解决这个问题的人都和你有着同样的意图。总之,正确的答案对每个人都有帮助。