<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # C# 部分類和部分方法 > 原文: [https://www.programiz.com/csharp-programming/partial-class-and-methods](https://www.programiz.com/csharp-programming/partial-class-and-methods) #### 在本文中,我們將學習如何以及為什么在 C# 中實現部分類和部分方法。 在很多情況下,您可能需要拆分類定義,例如在處理大型項目時,可能需要多個開發人員和程序員同時處理同一個類。 在這種情況下,我們可以使用稱為**部分類**的功能。 * * * ## 部分類簡介 在使用 C# (或 OOP)進行編程時,我們可以將類的定義劃分為兩個或多個源文件。 源文件包含類定義的一部分,并且在編譯應用時將所有部分組合在一起。 為了拆分類定義,我們需要使用`partial`關鍵字。 ### 示例 1: 我們有一個名為`HeightWeightInfo`的項目,它顯示了身高和體重。 我們有一個名為`File1.cs`的文件,其子類名為`Record`。 它具有兩個整數變量`h`和`w`和一個名為`Record`的方法/構造器,該方法/構造函數分配`h`和`w`的值。 ```cs namespace HeightWeightInfo { class File1 { } public partial class Record { private int h; private int w; public Record(int h, int w) { this.h = h; this.w = w; } } } ``` 這是另一個名為`File2.cs`的文件,具有相同的子類`Record`,該文件只有方法`PrintRecord`。 此方法將顯示`h`和`w`的值。 ```cs namespace HeightWeightInfo { class File2 { } public partial class Record { public void PrintRecord() { Console.WriteLine("Height:"+ h); Console.WriteLine("Weight:"+ w); } } } ``` 現在,我們在這里可以看到項目的`Main`方法: ```cs namespace HeightWeightInfo { class Program { static void Main(string[] args) { Record myRecord = new Record(10, 15); myRecord.PrintRecord(); Console.ReadLine(); } } } ``` 在這里,我們將`Record`的對象作為`myRecord`,將參數值 10 和 15 分別傳遞給`h`和`w`到`File1.cs`中定義的方法。 `PrintRecord`方法由`File2.cs`中定義的對象`myRecord`調用。 這表明`partial`關鍵字有助于組合在各種文件中定義的類的所有屬性,以作為單個類工作。 可以使用`partial`類的地方: 1. 在與多個開發人員一起進行較大項目的同時,它可以幫助開發人員同時在同一個類上工作。 2. 可以在不重新創建由 IDE(即 Visual Studio)自動生成的源文件的情況下,將代碼添加或修改到該類。 * * * ### 要記住的事情 `partial`關鍵字指定可以在命名空間中定義類的其他部分。 如果我們要使一個類成為局部類,則必須使用`partial`關鍵字。 類的所有部分都應該在相同的命名空間中,并在編譯時可用以形成最終類型。 所有部分都必須具有相同的訪問修飾符,即私有,公共等。 * 如果任何部分被聲明為抽象的,則整個類型被認為是抽象的。 * 如果任何部分聲明為密封的,則整個類型都視為密封的。 * 如果任何部分聲明了基本類型,則整個類型都將繼承該類。 * 在部分定義中聲明的任何類成員都可用于所有其他部分。 * 局部類的所有部分都應位于同一命名空間中。 **注意**:`partial`修飾符不適用于委托或枚舉聲明 * * * ## 部分方法的解釋 局部類可以包含局部方法。 類的一部分包含方法的簽名。 可以在同一部分或另一部分中定義一個可選實現。 如果未提供實現,則在編譯時將刪除該方法和所有調用。 ### 示例 2: 讓我們以在`file1.cs`中定義的局部類`Car`為例,該類具有三種方法`InitializeCar()`,`BuildRim()`和`BuildWheels()`。 在這些方法中,將`InitializeCar`定義為`partial`。 ```cs public partial class Car { partial void InitializeCar(); public void BuildRim() { } public void BuildWheels() { } } ``` 我們還有另一個名為`file2.cs`的文件,它具有兩種方法`BuildEngine`和`InitializeCar`。 方法`InitializeCar`是部分方法,也在`file1.cs`中定義。 ```cs public partial class Car { public void BuildEngine() { } partial void InitializeCar() { string str = "Car"; } } ``` 部分方法聲明由兩部分組成: 1. 如`file1.cs`中的定義。 2. 與`file2.cs`中的實現相同。 它們可以在部分類的不同部分中,也可以在同一部分中。 * * * ### 關于部分方法的注意事項 * `partial`關鍵字。 * 返回類型`void`。 * 隱式`private`。 * 并且不能為`virtual`。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看