c#类中字段和方法中变量的声明问题

字段和局部变量的作用域冲突

  某些情况下可以区分名称相同,作用域相同的两个标识符。原因是C#在变量之间有一个基本的区分,它把在类级别声明的变量看作

  字段,而把在方法中声明的变量看作局部变量。

  class Program

  {

  int j = 20;

  static void Main(string[] args)

  {

    int j = 30;

    Console.WriteLine(j);

    Console.ReadKey();

  }

  }

  虽然在Main()方法的作用域内声明了两个j,这段代码也会编译。在类级别上定义的j,在该类删除前是不会超出作用域的,在

  Main()中声明的j隐藏了同名的类级别变量,所以运行代码时会显示30.

感觉可以用方法中的变量更改来达到保护或者隐藏类中字段的意思?