[英]Bank account with setters and getters
所以我有一个练习,需要做一个银行帐户程序。 纯粹的目标是让我理解设置者/获取者,因此非常简单。
我想写我私人的int钱; 仅可通过我的公共get / set int Money访问; 有了这些之后,我想使用一种方法,例如提款,从中提款。 现在我遇到了问题,当我执行我的withdraw方法时,它告诉我:由于Konto.Konto(int)给出了void的返回,因此无法返回任何值。 (不是逐字解释,而是我的翻译。
我从来没有设置任何无效的东西,所以我看不出我的问题在哪里。 预先感谢您对我的帮助。
编辑:我的最终目标是,如果我按1,我可以设置我提取的金额,我的系统会向我打印我剩下的值。 因此,我向我的方法“提款”了一个提款编号,该编号从我的初始值中减去,然后返回我剩下的值。
namespace ConsoleApp1
{
class Konto
{
private int money;
public int Money
{
get
{
return this.money;
}
set
{
money = value;
}
}
public Withdraw(int money)
{
return Money - money;
}
}
}
您在Withdrawal方法上缺少返回类型。 它应该是
public int Withdrawal(int money)
{
//you weren't setting the money variable to the new amount
Money -= money;
return Money;
}
在C#中,仅类构造函数不需要返回类型。 所以
class Konto
{
public Konto()
{...}
}
有效,但所有其他方法都需要具有返回类型。 另外,就样式/清理而言。 您不需要私人支持字段。 如果您要初始化帐户中的金额,并且仅通过提款和存款方法进行更改,则可以执行以下操作。
class Konto
{
public int Money {private set; get;}
public Konto(int initialAmount)
{
Money = initialAmount;
}
public int Withdrawal(amount)
{
Money -= amount;
return Money;
}
public void Deposit(int amount)
{
Money += amount;
}
}
在此代码中,只能通过创建的方法从类内部设置Money。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.