从其他类访问私有成员
本文关键字:成员 访问 其他 | 更新日期: 2023-09-27 18:34:02
在Java中,如果在一个顶级类中定义了两个类,则它们可以访问彼此的私有成员(字段,构造函数,方法)。因此,在以下情况下,您可以在ClassB
内部使用ClassA
的所有私有成员,反之亦然。
public class TopLevelClass {
private static class ClassA {
// Code omitted
}
private static class ClassB {
// Code omitted
}
}
你能在 C# 中做类似的事情吗?
即使使用 C# 中的嵌套类,两个单独的(彼此不嵌套)类也无法访问彼此的私有成员(即使它们共享一个父级)。但是,他们可以访问父类的私有成员。
如果您确实需要,您可以使用反射访问私人成员,当然,如果您需要访问它们,它们可能首先不应该被private
。
有关详细信息,请参阅嵌套类型。