スーパークラスと継承したクラスは "answer"という変数を継承しています...私は継承したクラスの変数を変更しますが、私のスーパークラスは動作しません!複数の方法を試して、今私は私の心を失っている!javaは継承クラスからスーパークラスに私の変数を返すことはできません
class RightTriangle{
public double answer;
public RightTriangle(){} ;
public double getAnswer(){return answer;}
public double returnAnswer(){
this.answer = answer;
return answer;
}
public String toString(){
return ("Answer: " + answer);
}
}
class sideAngle extends RightTriangle{
public double nintyDegree = 90;
private double sideA;
private double angleB;
private double answerUpdate;
public sideAngle(double sideA, double angleB){
this.sideA = sideA;
this.angleB = angleB;
}
public void solveEquation(){
angleB = Math.toRadians(angleB);
answerUpdate = Math.tan(angleB);
answer = sideA * answerUpdate;
System.out.println(answer);
}
}
解決策の計算式のコンストラクタで、私のテストステートメントで正しい数字が表示されます。
ここでも私は私のメインで呼び出し/初期化しました(間違っているとは思わないでください!)。
sideAngle angleSide = new sideAngle(firstNum, secondNum);
angleSide.solveEquation();
RightTriangle getAnswer = new RightTriangle();
System.out.println(getAnswer.toString()); <<<<<<<<
は0を出力します!
これもコンパイルされません。 https://stackoverflow.com/help/mcveと問題を示す入力を提供してください。 – Robert
ええ、本当にすみません、私はここに投稿する前にそれを修正しなければならなかったのですが、忘れてしまったいくつかの重要なものがありました!私はちょうど文字列として答えを見るように、 "答え"を追加しました。それはコンパイルする必要があります、0を取り戻す必要があります。入力が700と55または任意の数値であると言うことができます。スーパークラスでアウト! –