首页 > 解决方案 > 尝试从另一个类中的单独类添加类值

问题描述

我一共有三个班。其中两个具有具有十进制类型的余额属性的构造函数。我想要做的是获取这两个对象并在另一个类的构造函数中调用它们并添加它们的值,但 IDE 出于某种原因拒绝这样做。

代码是这样的:

class Class1{

    private decimal value; 

    Public Class1(decimal value){
         this.value = value;
    }

    public decimal Value{get; set;}
}

class Class2{

    private decimal value;

    Public Class2(decimal value){
         this.value = value;
    }

    public decimal Value{get; set;}

}

class Class3{

    public Class1 class1;
    public Class2 class2;
    private decimal value;

    public Class3(Class1 class1, Class2 class2){
    this.value = class1.Value + class2.Value; 
    }

}

一直说这是不可能的。现在不在工作,所以我没有更具体的错误信息。

标签: c#

解决方案


首先,改变

上市

上市

其次,如果您使用{get;set;}检查更多信息),则不需要拥有私有属性。在您的情况下,public decimal Value从未使用过,您仅使用private decimal value.

然后,在调用Class3构造函数时,您只访问public decimal Value始终为 0 的值。

我建议如下:

https://dotnetfiddle.net/nspSGs

class Class1{
    public decimal Value{get;}

    public Class1(decimal value){
        this.Value = value;
    }  
}

class Class2{
    public decimal Value{get; set;}

    public Class2(decimal value){
        this.Value = value;
    }
}

class Class3{
    public Class1 class1;
    public Class2 class2;
    public decimal Value { get; };

    public Class3(Class1 class1, Class2 class2){
        this.Value = class1.Value + class2.Value; 
    }   
}

推荐阅读