C# 如何在C语言中从对象中获取值#
我正在用C#编写一个简单的ATM程序,它应该是面向对象的。 我创建了一个公共类ATM,并在其中创建了另一个公共类ACC(account)。 我如何在ATM类中创建方法来记录ATM.ACC.ACCSaldo中有多少钱C# 如何在C语言中从对象中获取值#,c#,C#,我正在用C#编写一个简单的ATM程序,它应该是面向对象的。 我创建了一个公共类ATM,并在其中创建了另一个公共类ACC(account)。 我如何在ATM类中创建方法来记录ATM.ACC.ACCSaldo中有多少钱 public class ACC { public int ACCNr; //accaunt number public int ACCPIN; //PIN number public double ACCSaldo; //How muc
public class ACC
{
public int ACCNr; //accaunt number
public int ACCPIN; //PIN number
public double ACCSaldo; //How much money is in account
//constr
public ACC(int p, int p2, double p3)
{
ACCNr = p;
ACCPIN = p2;
ACCSaldo = p3;
}
}
我的主要代码如下所示:
static void Main(string[] args)
{
ATM ATM01 = new ATM();
ATM.ACC acc1 = new ATM.ACC(3333, 1234, 3000.53);
acc1.ACCNr = ATM01.czytnik();
Console.WriteLine("ACCNr: {0}", acc1.ACCNr);
Console.WriteLine("PIN: {0}", acc1.ACCPIN);
Console.WriteLine("Saldo: {0}", acc1.ACCSaldo);
ATM.tstPIN tstPIN1 = new ATM.tstPIN(acc1.ACCNr, acc1.ACCPIN ,acc1.ACCSaldo);
tstPIN1.test();
ATM.menu();
// Keep the console window open in debug mode.
Console.WriteLine("Press any key to exit.");
Console.ReadKey();
}
如果ATM中只有一个账户,您可以在ATM中声明一个ACC实例(如_ACC);您需要在主方法中初始化,然后可以执行以下操作:
public void DisplayAccountDetails()
{
Console.Write(String.Format("Account Balance:{0}", _acc.ACCSaldo));
}
我希望这会有所帮助。如果ATM中只有一个帐户,您可以在ATM中声明一个ACC实例(例如_ACC);您需要在主方法中初始化,然后可以执行以下操作:
public void DisplayAccountDetails()
{
Console.Write(String.Format("Account Balance:{0}", _acc.ACCSaldo));
}
我希望这会有所帮助。假设ATM类中只有一个帐户,并且看起来与以下类似:
public class ATM
{
public ACC Acc;
}
您可以在ATM类中添加如下方法:
public void WriteSaldo()
{
Console.WriteLine("Saldo: {0}", Acc.ACCSaldo);
}
然后在
Main
方法中,可以使用ATM01.WriteSaldo()代码>假设ATM类中只有一个帐户,并且看起来与以下类似:
public class ATM
{
public ACC Acc;
}
您可以在ATM类中添加如下方法:
public void WriteSaldo()
{
Console.WriteLine("Saldo: {0}", Acc.ACCSaldo);
}
然后在Main
方法中,可以使用ATM01.WriteSaldo()代码>您可以添加get和set属性。
公共双帐户{
得到;
设置
}您可以添加get和set属性。
公共双帐户{
得到;
设置
}现有代码不起作用怎么办<代码>acc1.ACCSaldo
应该可以正常工作;你看到错误了吗?在创建acc1之后,在程序的主要部分就可以了。你的意思是你想用一个不同的方法访问acc1
,而不是你已经得到的方法吗?我想要的是一个ATM类中的方法,可以在主程序中使用。类似于:publicstaticvoidwritesaldo(){double x;x=ACC.ACCSaldo;Console.WriteLine(“您得到了{0}个dolars.”,x);},然后在主要部分中,我应该编写类似于:ATM.writeSaldo();我知道您没有问这个问题,但您应该使用十进制
表示货币金额,而不是双精度
。您现有的代码不起作用怎么办<代码>acc1.ACCSaldo
应该可以正常工作;你看到错误了吗?在创建acc1之后,在程序的主要部分就可以了。你的意思是你想用一个不同的方法访问acc1
,而不是你已经得到的方法吗?我想要的是一个ATM类中的方法,可以在主程序中使用。类似于:publicstaticvoidwritesaldo(){double x;x=ACC.ACCSaldo;Console.WriteLine(“您得到了{0}个dolars.”,x);},然后在主要部分中,我应该编写类似于:ATM.writeSaldo();我知道你没有问这个问题,但你应该使用十进制
表示货币金额,而不是双倍
;设置是以及如何使用它。与其在类中声明变量,例如:public double ACCSaldo,您可以做的是在声明中为它提供get和set属性,通过在它后面放置{get;set;}来实现这一点。get允许另一个类获取值,而set允许您设置值。如果您需要任何其他解释,互联网上有许多教程,只需搜索“获取和设置属性”。这肯定会解决你的问题。很抱歉这么说,但我不知道你得到了什么;设置是以及如何使用它。与其在类中声明变量,例如:public double ACCSaldo,您可以做的是在声明中为它提供get和set属性,通过在它后面放置{get;set;}来实现这一点。get允许另一个类获取值,而set允许您设置值。如果您需要任何其他解释,互联网上有许多教程,只需搜索“获取和设置属性”。这肯定会解决你的问题。