共用方式為


部分 (Visual Basic)

表示類型宣告是型別的部分定義。

您可以使用 關鍵詞,將型別的定義分割成數個宣告 Partial 。 您可以在您想要的不同原始程序檔中,視需要使用盡可能多的部分宣告。 不過,所有宣告都必須位於相同的元件和相同的命名空間中。

備註

Visual Basic 支援 部分方法,這些方法通常會在部分類別中實作。 如需詳細資訊,請參閱部分方法和子語句

語法

[ <attrlist> ] [ accessmodifier ] [ Shadows ] [ MustInherit | NotInheritable ] _  
Partial { Class | Structure | Interface | Module } name [ (Of typelist) ]  
    [ Inherits classname ]  
    [ Implements interfacenames ]  
    [ variabledeclarations ]  
    [ proceduredeclarations ]  
{ End Class | End Structure }  

組件

術語 定義
attrlist 選擇性。 套用至此類型的屬性清單。 您必須以角括弧 (< >) 括住屬性清單
accessmodifier 選擇性。 指定哪些程式代碼可以存取此類型。 請參閱 Visual Basic 中的存取層級
Shadows 選擇性。 請參閱 陰影
MustInherit 選擇性。 請參閱 MustInherit
NotInheritable 選擇性。 請參閱 NotInheritable
name 必須的。 此類型的名稱。 必須符合相同類型所有其他部分宣告中定義的名稱。
Of 選擇性。 指定這是泛型型別。 請參閱 Visual Basic 中的泛型類型
typelist 如果您使用 Of,則為必要專案。 請參閱 類型清單
Inherits 選擇性。 請參閱 Inherits 語句
classname 如果您使用 Inherits,則需要 。 這個類別衍生的來源類別或介面名稱。
Implements 選擇性。 請參閱 Implements 語句
interfacenames 如果您使用 Implements,則需要 。 這個型別所實作的介面名稱。
variabledeclarations 選擇性。 宣告型別其他變數和事件的語句。
proceduredeclarations 選擇性。 宣告和定義型別其他程序的語句。
End ClassEnd Structure 結束此部分 ClassStructure 定義。

備註

Visual Basic 會使用部分類別定義,將產生的程式代碼與個別原始程式檔中的使用者撰寫程式代碼分開。 例如, Windows Form 設計 工具會定義控制項的部分類別,例如 Form。 您不應該修改這些控制件中產生的程式代碼。

建立部分類型時,適用於類別、結構、介面和模組建立的所有規則,例如修飾詞使用方式和繼承的規則。

最佳做法

  • 在正常情況下,您不應該將單一型別的開發分割成兩個或多個宣告。 因此,在大部分情況下,您不需要 Partial 關鍵詞。

  • 為了可讀性,類型的每個部分宣告都應該包含 Partial 關鍵詞。 編譯程式最多允許一個部分宣告省略 關鍵詞;如果兩個或多個省略它,編譯程式會發出錯誤訊號。

行為

  • 宣告聯集。 編譯程式會將類型視為其所有部分宣告的聯集。 每個部分定義的每個修飾詞都會套用至整個類型,而且每個部分定義中的每個成員都可供整個類型使用。

  • 模組中部分類型不允許類型升級。 如果部分定義位於模組內,該類型的類型升級會自動失敗。 在這種情況下,一組部分定義可能會導致非預期的結果,甚至是編譯程序錯誤。 如需詳細資訊,請參閱 類型升級

    只有在完整路徑完全相同時,編譯程式才會合併部分定義。

Partial關鍵字可用於下列內容:

類別陳述

Structure 陳述式

範例

下列範例會將 類別 sampleClass 的定義分割成兩個宣告,每個宣告都會定義不同的 Sub 程式。

Partial Public Class sampleClass
    Public Sub sub1()
    End Sub
End Class
Partial Public Class sampleClass
    Public Sub sub2()
    End Sub
End Class

上述範例中的兩個部分定義可以位於相同的原始程序檔或兩個不同的原始程序檔中。

另請參閱