2013-04-21 67 views
0

當我的程序第一次啓動時,在主要方法中,我創建了一個新菜單,然後進入菜單類。字段永遠不會分配給它,並且將始終具有其默認值null

private static Shop shop; 
    private static Player player; 

    public static void Main(string[] args) 
    { 
     Menu menu = new Menu(); 

     menu.start(menu, shop, player); 
    } 

在我的菜單類中,我有一個名爲start()的方法。其中打印出用戶的選項。

private Menu menu; 
    private Shop shop; 
    private Player player; 

    public void start(Menu menu, Shop shop, Player player) 
    { 

     this.menu = menu; 
     this.shop = shop; 

後來,當我編譯我的計劃,我選擇去商店,我得到的錯誤「不設置到對象的實例對象引用。」。我想我知道我必須做什麼,但我不確定你是如何在主要班級中做到的。

我想我要補充

Shop shop 

在Main方法的參數。然後聲明

this.shop = shop; 

裏面的方法,因爲我在我的其他類。

我試過這樣做,但總是出現錯誤。由於這是主要方法,我是否需要採取不同的方法?

回答

4

您還沒有實際分配的靜態引用:

private static Shop shop = new Shop(); 
private static Player player = new Player(); 
+0

我想,當我第一次開始這個項目,它從來沒有工作....只是改成了現在他們,和它的作品...我想我從不讓C#在刪除它們之前更新警告。謝謝您的幫助 – Jon 2013-04-21 12:48:39

相關問題