如何:宣告混合存取層級的屬性 (Visual Basic)
如果您希望屬性上的 Get
和 Set
程序具有不同的存取層級,您可以在 Property
陳述式中使用較寬鬆的層級,並在 Get
或 Set
陳述式中使用更嚴格的層級。 當您希望程式碼的某些部分能夠取得屬性的值,而程式碼的某些其他部分能夠變更該值時,您可以在屬性上使用混合存取層級。
如需存取層級的詳細資訊,請參閱 Visual Basic 中的存取層級。
宣告混合存取層級的屬性
以正常方式宣告屬性,並在
Property
陳述式中指定較不嚴格的存取層級 (例如Public
)。宣告
Get
或Set
程序,以指定更嚴格的存取層級 (例如Friend
)。請勿在其他屬性程序上指定存取層級。 它會假定
Property
陳述式中宣告的存取層級。 您可以僅限存取其中一個屬性程序。Public Class employee Private salaryValue As Double Protected Property salary() As Double Get Return salaryValue End Get Private Set(ByVal value As Double) salaryValue = value End Set End Property End Class
在上述範例中,
Get
程序具有與屬性本身相同的Protected
存取權,而Set
程序則具有Private
存取權。 衍生自employee
的類別可以讀取salary
值,但只有employee
類別可以設定該值。