c#中的this关键字
来源:互联网 发布:linux好学吗 编辑:程序博客网 时间:2024/05/11 15:35
this指类实例本身.比较正式说法是下面那种:
this操作数代表的是指向此对象的参考指针。也就是说,在建立对象的实体后,我们就可以使用this来存取到此
对象实体。另外,this操作数也可以用来解决名称相同的问题。
需要注意的是:静态方法中不能使用this。
示例如下:
Example 1:
this操作数用来解决名称相同的问题。
class Employee
{
...
public void SetEmpName(string EmpName)
{
EmpName = EmpName;//问题语句
}
private string EmpName; //Employee的成员变量
}
上述代码的本意是要将SetEmpName的传入参数EmpName的值指定给Employee类的成员变量EmpName。但是这样做并
没有成功,因为系统并不知道上述问题语句中的第一个EmpName指的是类成员。
解决方法是将问题语句修改如下:
this.EmpName = EmpName;
Example 2:
使用this操作数返回目前对象的参考。
class Employee
{
...
public Employee SetEmpName(string EmpName)
{
this.EmpName = EmpName;
return this;
}
public Employee SetEmpID(string EmpID)
{
mstrEmpID = EmpID;
return this;
}
private string EmpName;
private string mstrEmpID = "";
}
这样,我们可以使用如下语句来设置员工代号和员工名称了:
public class HumanResource {
public static int Main(){
Employee e1 = new Employee();
e1.SetEmpID("001").SetEmpName("William");//示例语句
return 0;
}
}
Example 3(这是个完整的示例,可以编译运行):
this操作数用在构造器(Constructor)中的情况。
using System;
namespace UCOM.HR{
public class Employee {
public Employee() :this("999",10000){ //示例语句
}
public Employee(string EmpID,double BaseSalary){
mstrEmpID=EmpID;
mdblBaseSalary=BaseSalary;
}
public void SetEmpID(string EmpID){
mstrEmpID=EmpID;
}
public string GetEmpID(){
return mstrEmpID;
}
public double GetBaseSalary(){
return mdblBaseSalary;
}
public void SetEmpName(string EmpName){
mstrEmpName=EmpName;
}
public string GetEmpName(){
return mstrEmpName;
}
public static void SetCompanyName(string CompanyName){
mstrCompanyName=CompanyName;
}
public static string GetCompanyName(){
return mstrCompanyName;
}
private static string mstrCompanyName="";
private string mstrEmpID="";
private string mstrEmpName="";
private double mdblBaseSalary=0;
}
public class HumanResource {
public static int Main() {
Employee e1 = new Employee();
Console.WriteLine("员工一:员工代号={0},基本薪资={1}",e1.GetEmpID(),e1.GetBaseSalary() );
return 0;
}
}
}
- c#中的this关键字
- C# 中的关键字之:base、this(一)
- C# 中的关键字之:base、this(二)
- C#中的base和this关键字
- C# this关键字详解
- C#之关键字this
- C# this关键字
- C# this 关键字
- C# this关键字用法
- C# 方法中的常见关键字(如:this,default etc.)
- C# this关键字在静态方法中的使用。
- 对象中的$this关键字
- Javascript中的this关键字
- JavaScript中的this关键字
- JavaScript 中的this 关键字
- java中的this关键字
- java 中的this关键字
- js中的this关键字
- 文档范例
- visual editor下载和安装问题(绝对正确)
- sybase中计算两个日期相差月数与ORACLE的不同
- MFC学习点滴一
- 服务器采用Windows操作系统的比例为77.0%
- c#中的this关键字
- 关于栈和堆中分配空间小结
- 用GDB调试程序
- 传军委正式通过085型航空母舰建造计划?
- 利用正则表达式完成 java.lang.String到String的转变(Pattern Matcher)
- URL编码简单实现
- 收藏:使用Visual Studio 2005 IDE的宏,自动为c#变量生成属性
- 试用一下谷歌拼音,感觉不错
- 用 gdb 调试 GCC 程序