程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#中this的應用實例剖析

C#中this的應用實例剖析

編輯:C#入門知識

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;
  }
}

運轉成果以下圖所示:

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved