using System; publicclass Robin { publicint x=156; } class Leon { publicstaticint Main() { Robin P1=new Robin (); int x =P1.x; Console.WriteLine (x); return0; } } 这只是一个简单的向屏幕输出的程序,但因为一次失误,将以上代码写成: using System; publicclass Robin { int x=156; } class Leon { publicstaticint Main() { Robin P1=new Robin (); int x =P1.x; Console.WriteLine (x); return0; } } 于是便发生了编译错误,找了许久终于发现症结,是public int x 与int x 之异所至!!!因为仿佛听过高人说所有声明在默认情况下都是Public的,但这次是为什么不对. 于是开始对他进行试验: 第一次将int x改成protected intenal x 测试通过,然后索性又改成intenal 测试还是通过没问题,再把它改成 privated 和protected 全部失败,这下引起了我对变量声明的性趣,为什么在这个地方使用不同的变量区域会有不同的效果,关注与学习和请教中