首页 > 任何类都可以看到同一个类其他实例中的私有字段??

任何类都可以看到同一个类其他实例中的私有字段??

我是c#的新手,最近在看<HEAD FIRST C#>,其中这句话让我百思不得其解:
中文翻译:任何类都可以看到同一个类其他实例中的私有字段;
英文原文:any class can see private fields in other instances of the same class.
我记得好像是类中的私有字段和方法只有类内部可以使用,为什么能在同一个类中不同的实例中可以访问?是我理解有问题吗?还是书写错了?


这句话的意思是:

public class D {
    private int i;
}
public class C {
    private int i;
    public void foo(C rhs) {
        i = rhs.i;  // OK    在类 C 里可以访问对象 rhs 的私有成员 i,因为 rhs 的类型 C 与当前类相同
    }
    public void bar(D rhs) {
        i = rhs.i;  // ERROR 在类 C 里不能访问对象 rhs 的私有成员 i,因为 rhs 的类型 D 与当前类不同
    }
}
【热门文章】
【热门文章】