日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C# partial 部分类使用简单举例说明

發布時間:2025/3/11 C# 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C# partial 部分类使用简单举例说明 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

partial 關鍵字允許把類、結構、方法或者接口放在多個文件中。一般情況下,某種類型的代碼生成器生成了一個類的某部分,所以把這類放在多個文件中是有益的。假定要給類添加一些從工具中自動生成的內容。如果重新運行該工具,前面所做的修改就會丟失。partial 關鍵字有助于把類分開放在兩個文件中,而對不由代碼生成器定義的文件進行修改。

partial 關鍵字的用法是:把Partial放在class、struct、或者inteface關鍵字前面。在下面的舉例中 SampleClass類駐留在兩個不同的源文件 SampleClassAutogenerated.cs 和 SampleClass.cs中。

//SampleClassAtuogenerated.cs partial class SampleClass {public void MethodOne(){} }//SampleClass.cs partial class SampleClass {public void MethodTwo(){} }

編譯包含這兩個源文件項目時,會創建一個SampleClass類,它有兩個方法MethodOne() 和 MethodTwo()。

如果聲明類時 使用了下面的關鍵字,則這些關鍵字就必須應用于同一個類型的的所有部分。

1、public

2、private

3、protected

4、internal

5、abstract

6、sealed

7、new

8、一般約束

在嵌套的類型中,只要partial關鍵字位于class關鍵字的前面,就可以嵌套部分類。在把部分類編譯到類型中時,屬性,XML注釋,接口,泛型類型的參數屬性和成員會合并。有如下兩個源文件:

//SampleClassAutogenerated.cs [CustomAttribute] partial class SampleClass:SampleBaseClass,IsampleClass {public void MethodOne(){} }//SampleClass.cs [AnotherAttribute] partial class SampleClass:IOtherSampleClass {public void MethodTwo(){} }

編譯后,等價的源文件變成:

[CustomAttribute] [AnotherAttribute] partial class SampleClass:SampleBaseClass,ISampleClass,IOtherSampleClass {public void MethodOne(){}public void MethodTwo(){} }

?注意:盡管partial 關鍵字很容易創建跨多個文件的巨大的類,且不同的開發人員處理同一個類的不同文件,但是關鍵字并不用于這個目的。在這種情況下,最好把大類拆分成幾個小類,一個類只用于一個目的。

部分類可以包含部分方法。如果生成的代碼應該調用可能不存在的方法,這就是非常有用的。擴展部分類的程序員可以決定創建部分方法的自定義實現代碼,或者什么也不做。下面的代碼片段包含一個部分類,其方法MethodOne調用APartialMethod方法。APartialMethod方法用partial關鍵字聲明:因此不需要任何實現代碼。如果沒有實現代碼,編譯器將刪除這個方法調用:

//SampleClassAtuogenerated.cs partial class SampleClass {public void MethodOne(){APartiaMethod();}public partial void APartialMethod(); }

部分方法在實現可以放在部分類的任何其他地方,如下面的代碼片段所示。有了這個方法,編譯器就在MethodOne內創建代碼,調用這里聲明的APartialMethod:

//SampleClass.cs partial class SampleClass : IOtherSampleClass {public void APartilMethod(){//implementation of APartialMethod} }

部分方法必須是void類型,否則編譯器在沒有實現了代碼的情況下無法刪除調用。?

?

?

?

總結

以上是生活随笔為你收集整理的C# partial 部分类使用简单举例说明的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。