我们可以在方法内部声明一个变量。但是为什么我们不能在方法的一侧声明属性呢?
在下面的示例中,我可以在方法内部声明变量,但不能声明属性。
我是C#的新手。所以,如果我错了,请纠正我。
class Program
{
Public void Learn()
{
int f = 5;
// int a { get; set;};
}
}`
答案 0 :(得分:0)
我可以在静态方法中声明一个字段
您声明的不是字段,而是局部变量。方法中不存在字段。
之所以这样做,是因为字段和属性表示对象的状态。 MusicPlayer
对象可能具有诸如IsPlaying
,Volume
之类的属性。这些是对象的“状态”。状态属于对象,而不是对象的一种特定方法,例如StartPlaying()
。
局部变量的目的是临时存储一些值以帮助该方法完成其工作。它们有点像废纸。您可能有一个名为SolveQuadratic(double a, double b, double c)
的方法,并且您有一个名为discriminent
的本地变量,该变量存储了b * b - 4 * a * c
,因此您不必每次都重写表达式b * b - 4 * a * c
这就是为什么您不能在方法内部拥有属性的原因,无论是静态属性还是其他属性。他们不属于那里。