关于C#中this的用法

2025-05-17 03:16:34
推荐回答(1个)
回答1:

private string name;
private string alias;

// 上面两个变量是私有的,只能在本类中访问,其余的类不能访问他们
//而下面的构造方法是外界能访问的,由于除本类之外的类不能访问上面的两个变量name和alias,但是又要给它们传值(如果不传值定义这两个变量就毫无意义),怎么办呢?于是就用下面的构造方法,通过这个构造方法的形参name和alias把值传递进来。这样做的目的就是为了提高程序的安全性,不能让外界直接访问里面的name和alias
//这样在其余的类中就可以写:
Employee emp = new Employee("姓名",“别名”);
在本类中就是:
this.name=name;//这里的name=”姓名“;
this.alias=alias;//这里的alias=”别名“

这样就达到了外界并没有访问本类的name和alias,但是值也传递进来了,所以达到了提高安全性的目的

public Employee(string name, string alias)
{
//将构造方法带的值赋给本类中的name,这个this你可以看成是“本类”的意思
this.name = name;
this.alias = alias;
}

括号里的的参数不一定要取相同的名称这个方法也可以写成
public Employee(string a,stirn b)
{这样写就不用this了,因为这里name和alias是唯一的

name=a;
alias=b;

}