我試圖建立一個創建水平通過其構造的對象一個非常基本的系統:如何將不同的變量值賦給同一對象的不同實例?
class Levels
{
// private level properties
private static string levelName { get; set; }
private static int levelSize { get; set; }
private static int levelNum { get; set; }
// new level constructor. Takes name, size (to square) and level number.
public Levels(string inName, int inSize, int inNum)
{
levelName = inName;
levelSize = inSize;
levelNum = inNum;
}
// ... GetLevel methods here...
}
,並將這些值分配給對象的每個特定實例。然而,輸出表明,levelName,levelSize和levelNum變量並沒有正確地「貼」在每個實例上。
class Program
{
static void Main(string[] args)
{
var Level1 = new Levels("Forest", 15, 1);
var Level2 = new Levels("Desert", 22, 2);
Console.WriteLine($"--- {Level1.GetLevelName()}, level {Level1.GetLevelNum()} ---");
Console.WriteLine($"--- {Level2.GetLevelName()}, level {Level2.GetLevelNum()} ---");
Console.ReadLine();
}
}
// output:
// --- Desert, level 2 ---
// --- Desert, level 2 ---
// why is level 1 not displaying here?
我知道,如果我是第一的WriteLine命令後,移動2級的構造會,hamfistedly,工作,但顯然我需要這些值來堅持自己的實例。
您不能擁有對象的實例。對象是類*的實例*等。 – idmean
哎呀!是的,你說得對,謝謝你指出。 –