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

歡迎訪問 生活随笔!

生活随笔

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

C#

《C#高级编程》笔记系列第三弹

發布時間:2023/12/10 C# 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《C#高级编程》笔记系列第三弹 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? 我們在開發WinForm時,經常會看到partial關鍵字,比如,我們新建一個Windows Form時,后臺代碼自動添加如下:

1?public?partial?class?Form1?:?Form
2?{
3?????public?Form1()
4?????{
5?????????InitializeComponent();
6?????}
7?}

????
??? 《C#高級編程》書中說明:partial關鍵字允許把類、結構或接口放在多個文件中。一般情況下,一個類存儲在單個文件中,但有時,多個開發人員需要訪問同一個類,或者某種類型的代碼生成器生成了一個類的某部分,所以把類放在多個文件中是有益的。

??? 也就是說,我們定義的一個類可以分開幾個文件來存儲,而各個文件都只是完成這個類的一部分功能。我們在使用這個類時,根本體會不到這個類是由幾部分結合在一起共同組成的。比如我分別在兩個地方定義了Box類的一部分:

public?partial?class?Box
{
????public?Box(string?newBoxName)
????{
????????boxName?=?newBoxName;//在這個部分類中,并沒有出現boxName局部變量。但是卻是可以使用的。
????}
????public?void?Open()
????{//打開盒子
????????Console.WriteLine(boxName?+?"?is?opened");
????}
}
public?partial?class?Box
{
????private?string?boxName?=?string.Empty;//boxName是在這個部分類中定義的哦
????public?void?Close()
????{//關閉盒子
????????Console.WriteLine(boxName?+?"?is?closed");
????}
};


??? 上面的代碼等同于下面的Box類:

public?class?Box
{
????private?string?boxName?=?string.Empty;
????public?Box(string?newBoxName)
????{
????????boxName?=?newBoxName;
????}
????public?void?Open()
????{//打開盒子
????????Console.WriteLine(boxName?+?"?is?opened");
????}
????public?void?Close()
????{//關閉盒子
????????Console.WriteLine(boxName?+?"?is?closed");
????}
}

????
??? 書中還有一段:在把部分類編譯到類型中時,會合并屬性、XML注釋、接口、一般類型的參數屬性和成員。
????
??? 所以自己可以去設計一些小Demo去嘗試一下。現在回到最開始的問題,為什么新建立的Winows Form的類定義成了一個部分類。我們打開Form1.Designer.cs文件,可以看到,原來Form1的另一部分類是在這個文件中設計的。這個部分類中定義了我們使用的控件、事件委托以及如Dispose方法等。因為這里面的代碼都是自動生成的,因此設計成了一個部分類。OK,原來partial如此簡單,就到這啦!

轉載于:https://www.cnblogs.com/yechanglv/p/6923075.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的《C#高级编程》笔记系列第三弹的全部內容,希望文章能夠幫你解決所遇到的問題。

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