2011-06-15 49 views
2

好吧,我有一些關於FriendProtected Friend限定符的頭痛。我讀到的信息對我來說看起來像是法律語言。有些喜歡簡單的法律語言,但仍然是法律語言。需要澄清的朋友和受保護的朋友的範圍

因此,我將嘗試在僞VB提供思想的框架:

假設我有AssemblyOne

Public Class classA_One 
    Public memberPub 
    Private memberPriv 
    Protected memberProt 
    Friend memberFri 
    ProtectedFriend memberProFri 
End Class 

Public Class classAB_One 
    Inherits classA_One 
    ... 
End Class 

Public Class classC_One 
    Dim objA_One as classA_One 
End Class 

別人(一個運動課)把我的.dll文件生成,引用它,並創建AssemblyTwo

Public Class ClassAD_Two 
    Inherits classA_One 
    ... 
End Class 

Public Class classE_Two 
    Dim objA_One as classA_One 
End Class 

我想知道什麼爲t他知道classA_One的成員。我相信:

  • memberPub是隨處可見
  • memberPriv只能在classA_One
  • memberProt可以classA_One可以看出,classAB_One可以看出,和classAD_One

我不是什麼肯定是classA_One的其他兩名成員的知名度。

有人可以幫助我嗎?

TIA。

回答

2

Friend:表示它可以被組件中的任何類型訪問,沒有人引用你的程序集將能夠看到它。

Protected Friend:表示該類型只能由派生成員訪問,或者您的程序集類型不是派生的,或者程序集的一部分不能訪問它。

memberFri:是訪問classAB_one和所有其他裝配類

memberProFri:是classAB_one訪問,但不是在classC_one

+0

唉唉,謝謝!現在我掌握了一般意義:) – pepoluan 2011-06-15 06:50:30

相關問題