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;
}
}
運轉成果以下圖所示:
