为什么以下类的定义可以访问同一类另一个对象的私有数据成员other._name
和other._id
?
感谢。
public class MyData : IEquatable<MyData>
{
private long _id;
private string _name;
public bool Equals(MyData other)
{
bool ret =
string.Equals(_name, other._name) &&
long.Equals(_id, other._id);
return ret;
}
}
答案 0 :(得分:3)
如果查看private
的文档,您会看到:
private关键字是成员访问修饰符。私有访问是最不宽容的访问级别。私有成员只能在类的主体或声明它们的结构体中访问,如下例所示:
如上面的示例所示,您正在访问该类中的私有成员。它与另一个实例无关,你仍然在课堂上,因此可以访问所有内容。