this 關鍵字的用法
用法一 this代表當前類的實例對象
class Program
{
static void Main(string[] args)
{
try
{
Test test = new Test();
Console.WriteLine(test.getResult());
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
finally
{
Console.ReadLine();
}
}
}
public class Test
{
private string scope = "全局變量";
public string getResult()
{
string scope = "局部變量";
// this代表Test的實例對象
// 所以this.scope對應的是全局變量
// scope對應的是getResult方法內的局部變量
return this.scope + "-" + scope;
}
}
運行結果:
// 用法二 用this串聯構造函數
class Program
{
static void Main(string[] args)
{
try
{
// this()對應無參構造方法Test()
// 先執行Test(),後執行Test(string text)
Test test = new Test("s");
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
finally
{
Console.ReadLine();
}
}
}
public class Test
{
public Test()
{
Console.WriteLine("默認無參構造");
}
public Test(string s):this()
{
Console.WriteLine("有參構造:"+s);
}
}
運行結果:
用法三 擴展方法
用法四 索引器
後兩種,具體後續詳細描述
this 關鍵字的用法