我是编程的新手,这个课程正在努力。
这是我的代码(类型基于userinput)
public static Account CreateAccount(int type)
{
switch (type)
{
case 1:
SaveAcc savings = new SaveAcc();
break;
default:
Console.WriteLine("No such choice");
break;
}
return new Account();
}
这些是我的课程:
class Account
{
protected int balance;
protected int accountnr = 1;
protected bool credit;
public Account()
{
newNr++;
accountnr = newNr;
}
public override string ToString()
{
return "AccNr: " + Nr.ToString("G") + ", balance: " + balance.ToString("C");
}
}
class SaveAcc: Account
{
public int rate;
public SaveAcc()
{
credit = true;
rate = 0.03;
}
public override string ToString()
{
return "AccNr: " + Nr.ToString("G") + ", balance: " + balance.ToString("C") + credit.ToString();
}
}
当我创建一个SavAcc对象时,"错误"正在调用覆盖。我的目标是显示位于SavAcc继承类中的覆盖ToString方法给出的所有信息。我错过了一些明显的东西吗?
答案 0 :(得分:0)
改变这个:
switch (type)
{
case 1:
SaveAcc savings = new SaveAcc();
break;
default:
Console.WriteLine("No such choice");
break;
}
return new Account();
对此:
switch (type)
{
case 1:
return new SaveAcc();
default:
Console.WriteLine("No such choice");
return new Account();
}