C# this关键字的四种用法

作者:天碼亦行空 时间:2022-10-06 07:09:22 

本文实例为大家分享了C# this关键字的四种用法,供大家参考,具体内容如下

用法一  this代表当前实例,用this.显式调用一个类的方法和成员


namespace Demo
{
 public class Test
 {
   private string scope = "全局变量";
   public string getResult()
   {
     string scope = "局部变量";
// 在这里,this代表Test的实例,所以this.scope指向的是全局变量,scope所访问的是局部变量
     return this.scope + "-" + scope;
   }
 }

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

}
 }

用法二  通过this实现原始类型的扩展(下一篇详解)

用法三  通过this实现索引器,可用于优化程序性能(下一篇详解)

用法四  用this串联构造函数


namespace Demo
{
 public class Test
 {
   public Test()
   {
     Console.WriteLine("无参构造函数");
   }
   // 这里的this()指向的是Test()无参构造函数
   // 相当于继承了无参构造函数
   public Test(string text) : this()
   {
     // 程序进来后会先执行Test()无参函数,然后继续往下边执行
     Console.WriteLine(text);
     Console.WriteLine("有参构造函数");
   }
 }

class Program
 {
   static void Main(string[] args)
   {
     try
     {
       Test test = new Test("张三");
     }
     catch (Exception ex)
     {
       Console.WriteLine(ex);
     }
     finally
     {
       Console.ReadLine();
     }
   }
 }
}

C# this关键字的四种用法

标签:C#,this,关键字
0
投稿

猜你喜欢

  • 利用C#快速查出哪些QQ好友空间屏蔽了自己

    2023-10-07 22:14:28
  • Maven 错误找不到符号的解决方法

    2021-07-19 09:03:02
  • Spring @Bean注解的使用场景与案例实现

    2023-11-20 04:44:22
  • java利用url实现网页内容的抓取

    2023-05-14 11:10:21
  • C# Winform自动更新程序实例详解

    2021-12-06 05:52:57
  • 用C#实现启动另一程序的方法实例

    2023-06-20 12:05:43
  • Java线程同步、同步方法实例详解

    2023-10-16 07:10:53
  • C#实现程序等待延迟执行的方法

    2023-07-16 06:32:36
  • Android集成微信支付功能

    2023-07-14 10:38:11
  • Cocos2d-x的内存管理总结

    2022-08-31 04:16:02
  • 关于Java从本地文件复制到网络文件上传

    2022-05-10 16:49:02
  • Unity 使用TexturePacker打包图集的操作方法

    2021-08-30 18:48:17
  • Java基于Calendar类输出指定年份和月份的日历代码实例

    2023-09-20 07:40:57
  • 详细图解Java中字符串的初始化

    2023-11-20 19:34:24
  • 模拟按Home键退出应用的简单方法(分享)

    2023-10-30 20:02:36
  • C#实现Base64处理的加密解密,编码解码示例

    2023-07-15 12:11:31
  • 详解SpringBoot启动代码和自动装配源码分析

    2021-10-18 08:49:21
  • Android性能优化之线程监控与线程统一详解

    2023-11-24 07:38:50
  • Android中asset文件夹与raw文件夹的区别深入解析

    2022-11-22 01:40:34
  • 深入XPath的详解以及Java示例代码分析

    2021-11-01 13:42:33
  • asp之家 软件编程 m.aspxhome.com