我们可以在C#的方法内部声明属性吗?

时间:2018-06-24 11:28:47

标签: c# .net visual-studio c#-4.0 c#-3.0

我们可以在方法内部声明一个变量。但是为什么我们不能在方法的一侧声明属性呢?

在下面的示例中,我可以在方法内部声明变量,但不能声明属性。

我是C#的新手。所以,如果我错了,请纠正我。

class Program
    {
        Public void Learn()
        {
           int f = 5;
          // int a { get; set;};
        }
    }`

1 个答案:

答案 0 :(得分:0)

  

我可以在静态方法中声明一个字段

您声明的不是字段,而是局部变量。方法中不存在字段。

之所以这样做,是因为字段和属性表示对象的状态。 MusicPlayer对象可能具有诸如IsPlayingVolume之类的属性。这些是对象的“状态”。状态属于对象,而不是对象的一种特定方法,例如StartPlaying()

局部变量的目的是临时存储一些值以帮助该方法完成其工作。它们有点像废纸。您可能有一个名为SolveQuadratic(double a, double b, double c)的方法,并且您有一个名为discriminent的本地变量,该变量存储了b * b - 4 * a * c,因此您不必每次都重写表达式b * b - 4 * a * c

这就是为什么您不能在方法内部拥有属性的原因,无论是静态属性还是其他属性。他们不属于那里。