我的代码正在运行,但我正在尝试理解有关构造函数的内容。

时间:2013-09-19 12:05:49

标签: java constructor

我创建了一个可以创建有理数的新类,可以用有理数来计算。我的代码运行正常,我尝试了很多东西并且它有效,但是我并不真正理解我的构造函数中发生了什么。我查看了Oracle上的java教程,但没有找到我的答案。

我的问题是关于我在构造函数中的临时参数,(Rational B2)

public Rational count(Rational b2) {                //ok
    int newNumerator = (this.Numerator * b2.denominator) + (this.denominator *    b2.Numerator); 
    int newDenominator = this.denominator * b2.denominator; 
    Rational r = new Rational(newNumerator, newDenominator);
    return r; 

我的问题是:什么是b2? b2的功能是什么?它存储在哪里?

希望有人可以向我解释,以便我对我的代码有更好的理解:)

1 个答案:

答案 0 :(得分:3)

您的方法不是构造函数。 b2仅用于获取denominatornumerator以创建新的Rational实例。

该方法可能是:

public Rational count(int otherNumerator, int otherDenominator) {                //ok
    int newNumerator = (this.Numerator * otherDenominator) 
                        + (this.denominator * otherNumerator); 
    int newDenominator = this.denominator * otherDenominator; 
    Rational r = new Rational(newNumerator, newDenominator);
    return r; 
}