首页

文章

C#:关于this关键字的作用

发布网友 发布时间:2022-03-23 00:04

我来回答

5个回答

热心网友 时间:2022-03-23 01:34

this 关键字将引用类的当前实例。静态成员函数没有 this 指针。this 关键字可用于从构造函数、实例方法和实例访问器中访问成员。

以下是 this 的常用用途:

限定被相似的名称隐藏的成员,例如:
public Employee(string name, string alias)
{
this.name = name;
this.alias = alias;
}
将对象作为参数传递到其他方法,例如:
CalcTax(this);
声明索引器,例如:
public int this [int param]
{
get
{
return array[param];
}
set
{
array[param] = value;
}
}
在静态方法、静态属性访问器或字段声明的变量初始值设定项中引用 this 是错误的。

参考资料:MSDN

热心网友 时间:2022-03-23 02:52

this关键字指代当前对象,它会产生一个当前对象的句柄,可以用它直接引用对象.

C#中this关键字用途:

1. 最常用的,也就是你提到的:解决可能在实例变量和局部变量之间发生的任何同名的冲突。

2.将对象作为参数传递到其他方法

3.声明索引器

using System;
class Employee
{
private string _name;
private int _age;
private string[] _arr = new string[5];

public Employee(string name, int age)
{
// 使用this限定字段,name与age
this._name = name;
this._age = age;
}

public string Name
{
get { return this._name; }
}

public int Age
{
get { return this._age; }
}

// 打印雇员资料
public void PrintEmployee()
{
// 将Employee对象作为参数传递到DoPrint方法
Print.DoPrint(this);
}

// 声明索引器
public string this[int param]
{
get { return _arr[param]; }
set { _arr[param] = value; }
}

}
class Print
{
public static void DoPrint(Employee e)
{
Console.WriteLine("Name: {0}\nAge: {1}", e.Name, e.Age);
}
}

class TestApp
{
static void Main()
{
Employee E = new Employee("Hunts", 21);
E[0] = "Scott";
E[1] = "Leigh";
E[4] = "Kiwis";
E.PrintEmployee();

for(int i=0; i<5; i++)
{
Console.WriteLine("Friends Name: {0}", E[i]);
}

Console.ReadLine();
}
}

热心网友 时间:2022-03-23 04:26

简单的说 this的作用就是用来判断当前的实例,比如在form1中编写码时,它就代表form1的对象,所以就可以这样用: this.name ,this.Location等等

热心网友 时间:2022-03-23 06:18

this顾名思义,也就是当前的对象,用this可以访问该对象中的一系列属性,方法(除了静态的),这是面向对象编辑最基本的一个思想哦

热心网友 时间:2022-03-23 08:26

一楼的哥们真细心,说的挺详细的.
宝石花的养殖方法介绍 宝石花怎么养才长得好 不想让老婆看到我电脑里的一些东西怎么办? 桥好路由器停电后在来电老是获取lp 勒索病毒加密的文件如何恢复? TPU贴合膜多少钱 华为手机如何将输入法改为简体 肉丝炒金针菇做法 仓储冷链信息怎么申报 什么是药品冷链物流 浙江食品冷链运输多少钱 生物冷链具备什么资质 投诉检测站最有效办法 冢君的解释 304C型钢厂 真诚推荐 永浩供 乌鲁木齐球墨铸铁厂家排名 2023年抖音618好物节招商规则 2023年抖音好物年货节好物直播间玩法说明 抖音2023好物年货节玩法攻略 互联网内容平台——小红书的优势与困境 ...女儿房间的空调洗一下滤网,问一下格力小金豆空调面罩怎么打开... 传真机和打印机有什么区别? 传真纸和打印纸哪个好 传真纸和复印纸哪个好 虚拟语气as though 的问题 We didn't know his telephone number, otherwise we would have teleph... 我想问一下 错综复杂条件句 那怎么不能使用在这里 if i can do this... 好可怕...好可怕的梦... 线束组装线束组装工艺要求 汽车线束英语翻译 带表卡尺怎么读数 带表卡尺的使用方法 压力变送器数显表 公主连结凯露表情包大全 臭鼬表情包图片一览[多图] 单眼皮怎么使用双眼皮贴? 咬人的那特小的虫子叫什么 Bose音响怎么连接蓝牙 博士音响蓝牙怎么连接 夹了一片菜叶,上面摆了七根鱼刺和在碗里放了七个汤勺,每个汤勺里放一根... 微信聊天记录怎么才能彻底删除?通过这几种操作可以确保隐私安全!_百度... IDM IDMShellExt64.dll无法删除 - 删除使用中的(进程相关或残留)文件... 写关于活动的句子100字 社区团购运营思路和实战有啥收获写100字 备忘录在手机的哪里 刚性消费有哪些 中国经济快速增长的原因 什么是刚性消费 什么叫刚性增长 特别精辟的个性签名(非常经典的个性句子) 特别经典的个性签名(非常惊艳的个性句子) 文艺范十足的个性签名(温柔治愈的个性签名句子) wps文字怎么设置每页头和尾 27岁的女人需要补充哪些营养元素 关于JAVA中this的应用 简述Java中This和 Super关键字的使用 this和super 关键字有什么作用 Java中怎么使用this关键字?什么时候可以使用? java 中this关键字的作用,求详细的解答 javascript中this关键字是什么意思,在那些场合使用 java 中this关键字的作用是什么? java中this关键字有什么作用,详细点,需要例子解析 js中this关键字如何应用? java 的this的运用? java 中的this关键字的几种用法 java中this的关键字用法是什么? C#中this关键字的作用是什么? 简要说明super关键字和this关键字的用法 3. this关键字可以用来调用哪些结构,简单说明一下其使用? this关键字主要应用于哪些场合? this关键字有什么用? 没有耳机孔的手机有哪些 为什么小米手机没有耳机却显示插了耳机 小米11没有耳机孔怎么办? Java中怎么使用this关键字,和在什么时候可以使用.内容越详细越好.我在这里先谢过了...... 华为miracast投屏在哪 如何找到手机的MIRACAST 手机的Miracast功能在哪 华为mate7中的“miracast”选项在哪设置? 华为手机的无线显示功能怎么使用 华为如何找到miracast 华为mate7中的miracast选项在哪 华为8Amiracast设置在哪? 华为的无线投屏怎么用 华为手机如何连电视 华为手机的无线显示功能在哪里连接和电视互屏的功能? 华为MLA-AL00是什么机型? huawei mla-al00是什么机型 华为MLA一ALoo是什型号 华为手机有MLA-AL00这个型号吗? 华为mal一al00是什么型号 华为mla-al00是什么cpu 华为mla-ul00是什么型号 华为麦芒5型号代码
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com