2017-03-06 82 views
0

我正在寫一個小數計算器project.I'm試圖寫乘法的方法。如果我想將它作爲SimpleFraction使用,我需要將參考參數FractionInterface向下轉換爲Fraction。 這裏的FractionInterface:Java下降參考參數接口

public interface FractionInterface { 
    public void setFraction(int num, int den); 

    public void simplifyFraction(); 

    public double toDouble(); 

    public FractionInterface add(FractionInterface secondFraction); 

    public FractionInterface subtract(FractionInterface secondFraction); 

    public FractionInterface multiply(FractionInterface secondFraction); 

    public FractionInterface divide(FractionInterface secondFraction); 
} 

這裏的方法:

public FractionInterface multiply(FractionInterface secondFraction) { 
    FractionInterface f = new Fraction(num,den); 
    Fraction result = new Fraction((this.num * f.num),(this.den * f.den));//error:num cannot be resolved or is not a field 
    return result; 
} // end multiply 
+0

你期望'f.num'是什麼?這個問題需要更多關於上面代碼中共享的類和屬性的詳細信息。 – nullpointer

+0

您在FractionInterface類中沒有定義num屬性。沒有書房財產。您不能使用不存在的屬性。 –

+0

我只是想通了。它應該是分數f =(分數)secondFraction; –

回答

0

error:num cannot be resolved or is not a field

fFractionInterface是類型的引用。您不能通過接口引用訪問類字段;您需要垂頭喪氣fFraction之前您訪問其numden領域。

移動的,secondFraction無處被在函數體使用。