[英]Using setters and getters for math equations and printlines
所以我在使用setter和getter時遇到了麻煩,因為我現在無法獲取addNumbers的值,因此我已注釋掉其他注釋,因此我現在不擔心它們。 我最關心的是一旦將數字傳遞給setter時,將其數字寫行,從getter中檢索是否然后在addNumbers中使用它的語法。 如果有人能啟發我或給我一個好的榜樣,那會比我現在好。 非常感謝您的幫助!
class MainModule
{
static void Main(string[] args)
{
Info myInfo = new Info();
myInfo.DisplayInfo("Assignment 3A - Math Ops w/ Properties");
MathOperations ops = new MathOperations();
int input1, input2;
Console.WriteLine("Enter first number to calculate");
ops.operand1 = int.Parse(Console.ReadLine());
Console.WriteLine("Enter second number to calculate");
ops.operand2 = int.Parse(Console.ReadLine());
Console.WriteLine("Added: {0}", ops.addNumbers);
//Console.WriteLine("Subtracted: " + ops.subtractNumbers(value1, value2));
//Console.WriteLine("Divided: " + ops.divideNumbers(value1, value2));
//Console.WriteLine("Multiplied: " + ops.multiplyNumbers(value1, value2));
Console.ReadLine();
}
class MathOperations
{
private int operand1;
private int operand2;
public int Operand1
{
get
{
return operand1;
}
set
{
operand1 = value;
}
}
public int Operand2
{
get
{
return operand2;
}
set
{
operand2 = value;
}
}
public MathOperations()
{
//default constructor
}
public MathOperations(int op1, int op2)
{
operand1 = op1;
operand2 = op2;
}
public int addNumbers()
{
return operand1 + operand2;
}
addNumbers
不是上面定義的屬性。 這是一種方法,您需要添加括號
Console.WriteLine("Added: {0}", ops.addNumbers());
.....
public int addNumbers()
{
return operand1 + operand2;
}
否則,但我不建議您這樣做,因為您正在執行的操作未讀取類的屬性,請將代碼更改為
Console.WriteLine("Added: {0}", ops.addNumbers);
.....
public int addNumbers
{
get{ return operand1 + operand2; }
}
這樣,您就可以為getter提供一個readonly屬性。 但是我仍然認為屬性應該表示類的屬性而不是操作,因此在這種情況下,將方法實現為似乎更正確。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.