Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 字段从未指定给,并且始终具有默认值0_C# - Fatal编程技术网

C# 字段从未指定给,并且始终具有默认值0

C# 字段从未指定给,并且始终具有默认值0,c#,C#,我搜索过类似的结果,有几个问题与我的相匹配,但没有一个能给我我想要的答案。我的代码字段radius1一直将自身设置回零。我知道为什么,这是因为它是在初始类中,所以每当类被称为radius1时,它都被设置为零。我如何着手解决这个问题,以便调用另一个方法并保持半径不变?这是我的密码: public class Circle : Shape { public static double radius1; public Circle(double radius) {

我搜索过类似的结果,有几个问题与我的相匹配,但没有一个能给我我想要的答案。我的代码字段radius1一直将自身设置回零。我知道为什么,这是因为它是在初始类中,所以每当类被称为radius1时,它都被设置为零。我如何着手解决这个问题,以便调用另一个方法并保持半径不变?这是我的密码:

public class Circle : Shape
{
    public static double radius1;


    public Circle(double radius)
    {
       radius1 = radius;
    }

    public static double ShowArea()
    {
        return Math.PI * Math.Pow(radius1, 2.0);
    }
}
“代码字段半径1”不会一直将自身设置回零

你可以:

  • 切勿将其设置为除默认值(零)以外的任何值,或

  • 你把它设置为非零,然后你有一些其他的代码,你没有给我们看,它设置为零。这是因为它是公共的,所以任何其他代码都可以修改它


要修复此问题,请删除
公共静态
部分,然后从
ShowArea()
函数中删除
static
,并修改所有代码,使其不需要任何静态内容。

请发布您如何使用此Classic将静态成员数据和构造函数参数组合在一起是非常可疑的。只需从Classic中删除静态单词,如果您想创建许多圆的
实例,每个实例的半径可能不同,您想要删除单词
static
,因为您想要“这个圆”的区域。如果您想成为圆上的一组实用程序操作,则消除字段,只需将半径传递到
ShowArea
。由于“字段从未分配给,并且始终具有默认值0”是编译时警告,并且在编译时从未设置该值(即,以
静态
方式),因此该值为“有点“总是零。至少对编译器来说,是的,这是我面临的问题。值始终为零,请为措辞道歉。如何处理编译器。它确实需要静态,因为这些方法是在aspx上运行的webpage@jjmart92所以这是针对ASP.NET应用程序的?那更糟。为什么?打开两个浏览器,你会发现我不明白你为什么认为“需要静态”