我在一個生成Command對象的類中有一個switch語句,它基於代碼文件中的某一行是否與該Command對象的特定代碼相匹配。在switch語句中使用屬性?
這樣的:
switch (line):
{
case "#CODE1":
return new Command1();
case "#CODE2":
return new Command2();
}
我想要把它弄成這個樣子:
switch (line):
{
case Command1.Code:
return new Command1();
case Command2.Code:
return new Command2();
}
我想它創建的Command一個公共靜態屬性,但是編譯器會抱怨...
有沒有辦法沿着這個意圖去做一些事情,編譯器不會抱怨?
我不喜歡讓字符串常量需要「記憶」。我希望他們連接到他們各自的命令。這種方式不可能出現拼寫錯誤。智能感知將抓住他們。 – 2009-08-04 20:31:22
是的,但您的代碼文件中仍可能有拼寫錯誤。關鍵是要做你想做的事情,你必須首先實例化變量。在檢查屬性值後,您不能創建新實例,您必須先創建實例,然後才能檢查值。 – Beth 2009-08-05 16:59:28