this关键字指代自己当前对象本身,一般是指代实例化对象的本身
在一个类中构造器的调用往往是参数少的一方调用参数多的一方
下面举个例子:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace OOPText
{
public class Person
{
/// <summary>
/// 字段
/// </summary>
private int id;
public int Id
{
get { return id; }
set { id = value; }
}
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
private string password;
public string Password
{
get { return password; }
set { password = value; }
}
//如传来的是两个参数,我也变相的调用三个参数的构造器,只不过我把第三个参数写成了一个常数
public Person(int id, string name)
: this(id, name, "456789")
{
}
/当传来的是三个参数的时候,直接掉用三个参数的构造器 this指代当前实例化的这个对象的本身
public Person(int id, string name, string password)
{
this.id = id;
this.name = name;
this.password = password;
}
public void Say()
{
Console.WriteLine("您好{0}我的名字叫{1},我的密码是{2}",id,name,password);
}
static void Main()
{
Person person = new Person(1,"小刚");
person.Say();
}
}