HOW TO:宣告混合存取層級的屬性 (Visual Basic)
若要屬性上的 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 中宣告及呼叫預設屬性