2012-03-11 63 views
0

動態申請opearations我遇到一個問題...我有一個方法:動態隊列操作

public Watcher GoToEnd(Watcher begin) 
     { 
      Watcher searcher = begin; 
      while(searcher.Next =! null) 
      { 
       searcher = searcher.Next; 
      } 
      return (searcher); 
     } 

,但我得到一個錯誤「可訪問性不一致:返回類型‘Back_Maker_3.Watcher’被比方法'更容易訪問'Back_Maker_3.BMmain.GoToEnd(Back_Maker_3.Watcher)'「

有人可以看到我失蹤了嗎?我真的不知道有什麼問題...

回答

2

問題是您的Watcher類不是public類似於您的方法,它將Watcher作爲其返回類型和其參數之一公開,這是不允許的。

您可以使Watcherpublic,或者你可以給GoToEnd相同無障礙的Watcher。不過,我想你可能打算製作Watcherpublic

1

方法GoToEndpublic。由於它返回Watcher,因此Watcher類也必須是public

默認情況下,我認爲頂級班級是internal,嵌套班級是private。因爲我總是明確說明可訪問性,所以我不認爲這是很好的做法。

這樣做的原因是,如果Watcherinternal例如,然後在不同的彙編代碼可以調用GoToEnd的方法,但它不會是能夠使用Watcher對象,因爲它不能訪問它。