HOW TO:宣告混合存取層級的屬性
更新:2007 年 11 月
若要屬性上的 Get 和 Set 程序擁有不同的存取層級,可在 Property 陳述式 (Statement) 中使用更寬鬆的層級,並且在 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 存取權限。salary 值可供衍生自 employee 的類別 (Class) 讀取,但這個類別只能由 employee 類別進行設定。
請參閱
工作
HOW TO:在 Visual Basic 中宣告及呼叫預設屬性