(Java Noob)双重类型有问题

时间:2016-11-07 22:52:41

标签: java

我正在做练习,我必须用某些值创建某个对象。 我有一个班级“Comprador”

public class Comprador extends Persona {

    double presupuesto;

    public Comprador(String nombre, String apellido, String numeroDocumento, double presupuesto) {
        super(nombre, apellido, numeroDocumento);
        this.presupuesto = 00;
    }

    public double getPresupuesto() {
        return presupuesto;
    }

    public void setPresupuesto(double presupuesto) {
        this.presupuesto = presupuesto;
    }

    @
    Override
    public String toString() {
        return "nombre=" + nombre + ", apellido=" + apellido + ", numeroDocumento=" + numeroDocumento + "Comprador{" + "presupuesto=" + presupuesto + '}';
    }
}

我的想法是构建一个“Comprador”对象,然后通知这些值,但是当涉及到double时,我总是得到“0.0”。

Comprador monica = new Comprador("Monica","Robes","304", 3532.2);
System.out.println(monica.toString());

我尝试初始化double,但没有结果。我知道这可能是愚蠢的,但我无法弄清楚。

3 个答案:

答案 0 :(得分:1)

这是构造函数中的行this.presupuesto = 00;,这会导致您的问题。

将其替换为

this.presupuesto = presupuesto;

你会没事的。

答案 1 :(得分:0)

您不能使用" presupuesto" var,检查第2行的构造函数。您设置为00值。

public class Comprador extends Persona {

double presupuesto;

public Comprador(String nombre, String apellido, String numeroDocumento, double presupuesto) {
    super(nombre, apellido, numeroDocumento);
    this.presupuesto = presupuesto;
}

public double getPresupuesto() {
    return presupuesto;
}

public void setPresupuesto(double presupuesto) {
    this.presupuesto = presupuesto;
}


@Override
public String toString() {
    return  "nombre=" + nombre + ", apellido=" + apellido + ", numeroDocumento=" + numeroDocumento + "Comprador{" + "presupuesto=" + presupuesto + '}';
}

答案 2 :(得分:0)

在构造函数中,成员变量presupuesto永远不会使用构造函数的参数值进行初始化。

通过此this.presupuesto = 00;

更改此this.presupuesto = presupuesto;