C#中this的應用實例剖析。本站提示廣大學習愛好者:(C#中this的應用實例剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是C#中this的應用實例剖析正文
this症結字在C#法式設計中的運用異常頻仍,明天本文就this症結字的用法做一番剖析,願望能提對年夜家的C#法式設計有必定的贊助感化。詳細剖析以下:
1.代表以後類,在以後類中可以使用this拜訪以後類成員變量和辦法(須要留意的是 靜態辦法中不克不及應用this),也可用於參數傳遞,傳遞以後對象的援用。
示例代碼以下:
class Program { static void Main(string[] args) { thisClass testObj = new thisClass(); Console.ReadLine(); } } class thisClass { private string A { get; set; } public thisClass() { /*以後類this 拜訪類中屬性A 靜態辦法沒法拜訪A屬性*/ this.A = "Test String"; Console.WriteLine(this.TestFun("TestFun :")); } private string TestFun(string args) { return args + this.A; } }
運轉成果以下圖所示:
2.聲明索引器
索引器:許可類和構造的實例依照與數組雷同的方法停止索引,索引器相似與屬性,分歧的地方在於他們的拜訪器采取參數,被稱為有參屬性,索引可以被重載,屬於實例成員,不克不及聲明為static。
示例代碼以下:
class Program { static void Main(string[] args) { indexClass intIndexClass = new indexClass(); intIndexClass[0] = new thisClass("intIndexClass 111"); intIndexClass[1] = new thisClass("intIndexClass 222"); indexClass stringIndexClass = new indexClass(); stringIndexClass["string1"] = new thisClass("stringIndexClass string1"); stringIndexClass["string2"] = new thisClass("stringIndexClass string2"); Console.ReadLine(); } } class indexClass { /*聲明屬性*/ private thisClass[] thisClassArr = new thisClass[10]; private Hashtable thisClassStrArr = new Hashtable(); /*創立索引器1 索引可以被重載,屬於實例成員,不克不及聲明為static*/ public thisClass this[int index] { get { return thisClassArr[index]; } set { this.thisClassArr[index] = value; } } /*創立索引器2*/ public thisClass this[string index] { get { return thisClassStrArr[index] as thisClass; } set { this.thisClassStrArr[index] = value; } } } class thisClass { private string A { get; set; } public thisClass(string str) { /*以後類this 拜訪類中屬性A 靜態辦法沒法拜訪A屬性*/ this.A = str; Console.WriteLine(this.TestFun("TestFun :")); } private string TestFun(string args) { return args + this.A; } }
運轉成果以下圖所示: