在Java中携带这些变量有什么问题?

Whats wrong with carrying these Variables in Java?

目前正在学习 Java,似乎是 Python 的更难版本。现在,我们正在学习 classes,以及如何在 classes 之间传递变量。项目很简单,给我们两个class和税收有关的,一个class为主,一个设置变量。 在不调整主要 class 的情况下,您将如何调试这些 classes?

主要Class:

public class TaxFormTest {

    public static void main(String[] args)
    {
        TaxForm michiganStateTaxForm = new TaxForm();

        michiganStateTaxForm.setTaxRate(.07);
        System.out.println("Tax Form Rate: " + michiganStateTaxForm.getTaxRate());

        michiganStateTaxForm.setTaxRate(.09);
        System.out.println("Tax Form Rate: " + michiganStateTaxForm.getTaxRate());
    }
}

中学Class:

public class TaxForm{

    int taxRate;
    int rate;
    private double taxrate;

    public void setTaxRate()
    {
        taxRate = rate;
    }

    public double getTaxRate()
    {
        return taxrate;
    }

}

如果你能帮助我解决这个问题,谢谢。

您想拨打 setter:

 michiganStateTaxForm.setTaxRate(.07);

这个 setter 接受一个双精度值并将其设置在对象上。

因此您的 setter 应该如下所示:

public void setTaxRate(double rate)
    {
        taxRate = rate;
    }

同时从您的 class TaxForm 中删除 int rate; 它没有意义,因为您希望 setter 将其作为参数。