none
VB.NET 2005 內的 Friend 和 public 的差別?? RRS feed

  • 問題

  • 請問一下, 用這兩個宣告寫的副程式, 在別的視窗也可以呼叫, 那這二種宣告有什麼不同呢??
    2007年1月15日 上午 02:35

解答

  • 請參考VB語言存取範圍

    http://msdn.microsoft.com/library/cht/default.asp?url=/library/CHT/vbcn7/html/vbconAccessibility.asp

     

    Public

    Dim 陳述式中的 Public 關鍵字宣告項目為可從相同專案、從參考該專案的其他專案和從該專案所建立的組件內任何地方存取。下列程式碼顯示 Public 宣告的範例:

    Public Class ClassForEverybody 

    您只能在模組、命名空間或檔案層次使用 Public。這表示您可以在原始程式檔 (Source File) 或模組、類別或結構內宣告 Public 項目,但不可以在程序內

     

    Friend

    Dim 陳述式中的 Friend 關鍵字將項目宣告為可從相同專案中存取,但無法從專案以外存取。下列程式碼顯示 Friend 宣告範例:

    Friend StringForThisProject As String 

    您只能在模組、命名空間或檔案層次中使用 Friend。這表示您可以在原始程式檔或模組、類別或結構中宣告 Friend 項目,但不可以在程序內。

    2007年1月15日 上午 03:09
    版主

所有回覆

  • 請參考VB語言存取範圍

    http://msdn.microsoft.com/library/cht/default.asp?url=/library/CHT/vbcn7/html/vbconAccessibility.asp

     

    Public

    Dim 陳述式中的 Public 關鍵字宣告項目為可從相同專案、從參考該專案的其他專案和從該專案所建立的組件內任何地方存取。下列程式碼顯示 Public 宣告的範例:

    Public Class ClassForEverybody 

    您只能在模組、命名空間或檔案層次使用 Public。這表示您可以在原始程式檔 (Source File) 或模組、類別或結構內宣告 Public 項目,但不可以在程序內

     

    Friend

    Dim 陳述式中的 Friend 關鍵字將項目宣告為可從相同專案中存取,但無法從專案以外存取。下列程式碼顯示 Friend 宣告範例:

    Friend StringForThisProject As String 

    您只能在模組、命名空間或檔案層次中使用 Friend。這表示您可以在原始程式檔或模組、類別或結構中宣告 Friend 項目,但不可以在程序內。

    2007年1月15日 上午 03:09
    版主
  • 它的意思是不是說....

    Public 能給其它專案呼叫, 而 Friend 只能自己專案呼叫....??

    2007年1月15日 上午 03:21
  • 沒錯,就是這樣。
    2007年1月15日 上午 03:28
    版主