最近写一个C#程序时发现一个问题,类的私有成员在类外竟然可以访问,这是什么情况?
public class MyClass
{
private int num;
private void fun(){}
public int test()
{
MyClass newClass = new MyClass();
newClass.num = 5;
newClass.fun();
return newClass.num;
}
}
newClass.num = 5; newClass.fun(); 都能正常运行。很是疑惑,不明白这是怎么回事。
这是在类内部的函数中。在类外就不可以这么做了
你在类的内部当然能访问内部的成员变量。你在类的外部new一个类,然后访问这个变量试试,不可能的。