VB.Net修飾符


修飾符是新增了任何程式設計元素的關鍵字,以特別強調程式設計元素在程式中的行為或將被存取

例如,存取修飾符:Public, Private, Protected, Friend, Protected Friend等指示程式設計元素的存取級別,如:變數,常數,列舉或類。

VB.Net修飾符列表

下表提供了VB.Net修飾符的完整列表:

編號 修飾符 描述
1 Ansi 指定Visual Basic應將所有字串封送到美國國家標準學會(ANSI)值,而不管正在宣告的外部過程的名稱如何。
2 Assembly 指定原始檔開始處的屬性適用於整個程式集。
3 Async 表示它修改的方法或lambda表示式是非同步的。 這樣的方法被稱為非同步方法。 非同步方法的呼叫者可以在不等待非同步方法完成的情況下恢復工作。
4 Auto Declare語句中的charsetmodifier部分在呼叫外部過程期間為字串提供字元集資訊。它還影響Visual Basic如何搜尋外部檔案的外部過程名稱。Auto修飾符指定Visual Basic應根據.NET框架規則對字串進行編組。
5 ByRef 指定引數是通過參照傳遞的,即被呼叫的過程可以改變呼叫程式碼中引數的潛在變數的值。它在以下情況下使用: (1)Declare語句,(2)Function語句,(3)Sub語句
6 ByVal 指定引數以被呼叫過程或屬性不能更改呼叫程式碼中引數基礎變數的值的方式傳遞。它在以下情況下使用:(1)Declare語句,(2)Function語句,(3)Operator語句,(2)Property語句,(2)Sub語句
7 Default 將屬性標識為其類,結構或介面的預設屬性。
8 Friend 指定一個或多個宣告的程式設計元素可以從包含宣告的程式集中存取,而不僅僅是宣告它們的元件。Friend存取通常是應用程式程式設計元素的首選級別,Friend是介面,模組,類或結構的預設存取級別。
9 In 它用於通用介面和委託。
10 Iterator 指定函式或Get存取器是一個疊代器。疊代器對集合執行自定義疊代。
11 Key Key關鍵字使我們能夠為匿名型別的屬性指定行為。
12 Module 指定原始檔開始處的屬性適用於當前裝配模組。它與Module語句不同。
13 MustInherit 指定一個類只能用作基礎類別,並且不能直接從它建立物件。
14 MustOverride 指定在此類中未實現某個屬性或過程,並且必須在派生類中重寫它,然後才能使用它。
15 Narrowing 指示轉換運算子(CType)將類或結構轉換為可能無法儲存原始類或結構的某些可能值的型別。
16 NotInheritable 指定一個類不能用作基礎類別。
17 NotOverridable 指定在派生類中不能覆蓋屬性或過程。
18 Optional 指定在呼叫過程時可以省略過程引數。
19 Out 對於泛型型別引數,Out關鍵字指定型別是協變的。
20 Overloads 指定屬性或過程使用相同的名稱重新宣告一個或多個現有屬性或過程。
21 Overridable 指定屬性或過程可以由派生類中的名稱相同的屬性或過程重寫。
22 Overrides 指定屬性或過程覆蓋從基礎類別繼承的名稱相同的屬性或過程。
23 ParamArray ParamArray允許將任意數量的引數傳遞給過程。一個ParamArray引數總是使用ByVal宣告的。
24 Partial 指示類或結構宣告是類或結構的部分定義。
25 Private 指定一個或多個宣告的程式設計元素只能在其宣告上下文中存取,包括從任何包含的型別中存取。
26 Protected 指定一個或多個宣告的程式設計元素只能從其自己的類或派生類中存取。
27 Public 指定一個或多個宣告的程式設計元素沒有存取限制。
28 ReadOnly 指定可以讀取但不寫入變數或屬性。
29 Shadows 指定宣告的程式設計元素在基礎類別中重新宣告並隱藏相同名稱的元素或一組過載元素。
30 Shared 指定一個或多個已宣告的程式設計元素與整個類或結構關聯,而不與類或結構的特定範例關聯。
31 Static 指定一個或多個宣告的區域性變數將在宣告它們的過程終止之後,繼續存在並保留其最新值。
32 Unicode 指定Visual Basic應將所有字串編組為Unicode值,而不管正在宣告的外部過程的名稱。
33 Widening 指示轉換運算子(CType)將類或結構轉換為可以儲存原始類或結構的所有可能值的型別。
34 WithEvents 指定一個或多個宣告的成員變數參照可引發事件的類的範例。
35 WriteOnly 指定可以寫入屬性但不能讀取。