C#中部分類別和分部方法的應用

來源:互聯網
上載者:User

標籤:

本篇文章介紹了,C#中部分類別和分部方法的應用。需要的朋友參考下  

部分類別(Partial Class)在C#2.0引入,分部方法(Partial Method)在C#3.0引入,這兩個文法特性都具有相同的特性:將類(或)方法的代碼分散在多個地方。

1.部分類別的特性和應用

1.1部分類別的定義

在定義一個類時,加上partial關鍵字,此類即成為部分類別。

部分類別允許將一個類的代碼分散於一個以上的原始碼檔案中。

Person.cs代碼如下

 1 namespace PartialClassDemo1 2  { 3      public partial class Person 4      { 5          private int age; 6          Person(int age, string name) 7          { 8              this.age = age; 9              this.name = name;10          }11          public int Age12          {13              get14              {15                  return age;16              }17              set18              {19                  if (age < 0 || age > 120)20                      Console.WriteLine("年齡非法");21                  else22                      this.age = Age;23              }24          }25          static void Main(string[] args)26          {27              Person p = new Person(19,"張三");28              Console.WriteLine(p.Age);29              Console.ReadKey();30          }31      }32  }

Person2.cs代碼如下

1 namespace PartialClassDemo12 {3     public partial class Person4     {5         private string name;6     }7 }

使用部分類別時,需要注意一下原則:

 

(1)所有的需要“合并”的類必須都用partial關鍵字聲明。

(2)所有的需要“合并”的類必須位於同一個項目中。

2.為什麼要引入部分類別

部分類別主要用於隔離來源不同,功能不同或者類型不同的原始碼

另外分布特性還可以用具結構和介面

3.分布方法的特性和應用

分布方法允許將方法聲明與方法實現代碼分佈於不同的檔案中。與部分類別類似,使用partial關鍵字定義分部方法。

1        partial void show(string str);2         partial void show(string str)3         {4             Console.WriteLine(str+"再見");5         }

分布方法不能具有存取修飾詞或virtual、abstract、override new sealed 或者extern修飾符

 

partial修飾符只能出現在緊靠class struct interface void前面的位置

當分部方法沒有實現代碼時,C#編譯器會在編譯時間刪除其調用語句。

現在我們知道了分部方法有這種特性,但是它有什麼用呢?

使用分部方法允許我們在一個普通方法中插入一個方法佔位符,從而為編寫可隨時添加功能的方法提供支援。

分部方法不能有多個實現。

C#中部分類別和分部方法的應用

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.