- 相關推薦
c#中訪問關鍵詞 this 的常用用途
引導語:C#旨在設計成為一種“簡單、現代、通用”,以及面向對象的程序設計語言,以下是小編整理的c#中訪問關鍵詞 this 的常用用途,歡迎參考閱讀!
this 關鍵字引用類的當前實例,還可用作擴展方法的第一個參數的修飾符。
說明:
本文討論對類實例使用 this。有關其在擴展方法中使用的更多信息,請參見擴展方法(C# 編程指南)。
以下是 this 的常用用途:
限定被相似的名稱隱藏的成員,例如:
C#
public Employee(string name, string alias)
{
// Use this to qualify the fields, name and alias:
this.name = name;
this.alias = alias;
}
將對象作為參數傳遞到其他方法,例如:
CalcTax(this);
聲明索引器,例如:
C#
public int this[int param]
{
get { return array[param]; }
set { array[param] = value; }
}
由于靜態成員函數存在于類一級,并且不是對象的一部分,因此沒有 this 指針。在靜態方法中引用 this 是錯誤的。
示例
在本例中,this 用于限定 Employee 類成員 name 和 alias,它們都被相似的名稱隱藏。this 還用于將對象傳遞到屬于其他類的方法 CalcTax。
C#
class Employee
{
private string name;
private string alias;
private decimal salary = 3000.00m;
// Constructor:
public Employee(string name, string alias)
{
// Use this to qualify the fields, name and alias:
this.name = name;
this.alias = alias;
}
// Printing method:
public void printEmployee()
{
Console.WriteLine("Name: {0} Alias: {1}", name, alias);
// Passing the object to the CalcTax method by using this:
Console.WriteLine("Taxes: {0:C}", Tax.CalcTax(this));
}
public decimal Salary
{
get { return salary; }
}
}
class Tax
{
public static decimal CalcTax(Employee E)
{
return 0.08m * E.Salary;
}
}
class MainClass
{
static void Main()
{
// Create objects:
Employee E1 = new Employee("Mingda Pan", "mpan");
// Display results:
E1.printEmployee();
}
}
/*
Output:
Name: Mingda Pan
Alias: mpan
Taxes: $240.00
*/
【c#中訪問關鍵詞 this 的常用用途】相關文章:
c#訪問關鍵詞base的使用10-02
c#轉換關鍵詞explicit的使用09-22
c#中預處理指令#if的使用08-18
c#中預處理指令#line的使用05-20
C# 術語大全07-29
雅思閱讀中九類關鍵詞08-03
c#快速排序算法10-21
如何識別英語聽力中的關鍵詞06-05