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

C#中this指針的用法示例,

編輯:C#入門知識

C#中this指針的用法示例,


這篇文章主要介紹了C#中this指針的用法,對初學者而言是非常重要的概念,必須加以熟練掌握,需要的朋友可以參考下。

本文實例展示了C#中this指針的用法,對於初學者進一步牢固掌握C#有很大幫助,具體內容如下:

一、this指針是什麼:

這裡有一些面向對象編程的概念需要說明:類(Class)的概念和對象(Object)的概念
類是對事物概括,也是C#編碼時所有代碼歸屬的基本單位;而對象是對類的實例化,也就是C#裡new方法的返回值。寫代碼是不能直接用操作類,而只能先實例化類,然後我們用這個類被實例化後的對象。
通俗一些的說明是,“類”好比是“人”的概念,而我們把類實例化後,就成為單個人的“對象”,例如:“張三”。
this就是你的代碼所歸屬的“類”的實例化後的“對象”,也叫當前對象。

二、this指針的幾種用法:

1、限定被相似的名稱隱藏的成員

主要代碼如下:

1 2 3 4 5 6 7 8 9 10 11 12 public class ThisName { public string name = "張三"; public int num = 55; public ThisName() { } public void GetThisName(string name, int num) { name = this.name;//調取全局變量name num = this.num;//調取全局變量num HttpContext.Current.Response.Write("參數name的值為:"+name+";參數num的值為:"+num);//輸出結果為"參數name的值為張三;參數num值為:55" } }

2、將對象作為參數傳遞到別的方法中

主要代碼如下:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 public class ThisFF { public ThisFF() { } public string shuju() { return "This指針當做方法傳遞"; }   public void f1(ThisFF ff) { HttpContext.Current.Response.Write(ff.shuju()); }   public void f() { f1(this);//this在這裡可以理解為 ThisFF ff=news ThisFF();當前類的實例 } }   ThisFF ff=news ThisFF();//方法實例 ff.f();//調用方法 輸出結果為: This指針當做方法傳遞

3、聲明索引器

主要代碼如下:

1 2 3 4 5 6 private int _Sy; public int this[int sy] { get { return _Sy;} set { sy=_Sy;} }

三、總結:

1.this關鍵字引用被訪問成員所在的當前實例。靜態成員函數沒有this指針。this關鍵字可以用來從構造函數,實例方法和實例化訪問器中訪問成員。
不能在靜態方法。靜態屬性訪問器或者域聲明的變量初始化程序中使用this關鍵字,這將會產生錯誤。

2.在類的構造函數中出現的this作為一個值類型表示對正在構造的對象本身的引用。

3.在類的方法中出現this作為一個值類型表示對調用該方法的對象的引用。

4.在結構的構造函數中出現的this作為一個變量類型表示對正在構造的結構的引用。

5.在結構的方法中出現的this作為一個變量類型表示對調用該方法的結構。

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