我如何在androidStudio中声明一个新的空对象

时间:2015-09-28 11:39:56

标签: java object android-studio

我创建了一个类并将其命名为“PaymentObject”

public class PaymentObject implements Serializable {

        double precentsValue;
 String PrecentsText;

@Override
public String toString() {
    return PrecentsText;
}




public PaymentObject(String paymenttext,double paymentvalue)
{
   this.PrecentsText=paymenttext;
this.precentsValue=paymentvalue;


}
public String getPrecentsText(){return PrecentsText;}
public void setPrecentsText(String percents){this.PrecentsText=percents;}
public double getPrecentsValue(){return precentsValue;}
public void setPrecentsValue(double percentsvalue) {this.precentsValue=percentsvalue;}


}

在我的mainactivity类中,我想初始化一个PaymentObject类型的新对象 然后将值设置为该对象。  像这样:

PaymentObject po = new PaymentObject();
    po.setPrecentsValue(1);
    po.setPrecentsText("100%");

但当我这样做时出现错误“PaymentObject中的PaymentObject(字符串,双精度)无法应用于()” (仅当我在新对象上声明时添加值时,才会工作) 但我想打开一个对象,然后设置值...... 我该怎么办? 谢谢!

3 个答案:

答案 0 :(得分:1)

要创建空对象,只需创建一个默认构造函数:

public PaymentObject(){}

当你没有声明默认构造函数(没有参数)时 - 它就像你禁止创建空对象一样。

答案 1 :(得分:1)

您没有没有参数的构造函数。你明确地为此创建了一个。

public PaymentObject(){
    //initialize maybe with default values if any based on use case
} 

您可能需要阅读this

答案 2 :(得分:1)

在“列出的代码”中,您已修改默认构造函数行为以接受两个参数。

我建议,有2个构造函数,一个没有参数,另一个没有参数。

这样您就可以在需要时创建一个空对象,或者使用Initialized成员变量创建一个对象。

修改代码如下:

public class PaymentObject implements Serializable {

        double precentsValue;
        String PrecentsText;

@Override
public String toString() {
    return PrecentsText;
}

public PaymentObject()
{

}

public PaymentObject(String paymenttext,double paymentvalue)
{
   this.PrecentsText=paymenttext;
   this.precentsValue=paymentvalue;

}

public String getPrecentsText(){return PrecentsText;}
public void setPrecentsText(String percents){this.PrecentsText=percents;}
public double getPrecentsValue(){return precentsValue;}
public void setPrecentsValue(double percentsvalue) {this.precentsValue=percentsvalue;}


}