请您解释一下这两个构造函数实现之间的区别:
public User(string a, string b)
{
name = a;
location = b;
}
和这个:
public User(string a, string b)
{
this.name = a;
this.location = b;
}
从编译器的角度看,我看不出任何区别。请解释一下。
答案 0 :(得分:3)
没有区别,
this
仅引用该类,如果您传入的参数与该类中的字段具有相同的名称(以区别于它们),则很有用
public class Employee
{
private string alias;
private string name;
public Employee(string name, string alias)
{
// Use this to qualify the members of the class
// instead of the constructor parameters.
this.name = name;
this.alias = alias;
}
}
其他资源
this关键字引用该类的当前实例,并且是 也用作扩展方法第一个参数的修饰符