私は割り当てに取り組んでおり、別のクラスが拡張する親クラスを作成する必要があり、親クラスの toString() メソッドをオーバーライドし、親の toString メソッドを使用して新しいクラスを表示する必要がありますが、行を追加する必要があります.
すべて問題ありませんが、行き詰まっているところは、元の toString() には double をお金にフォーマットする数値フォーマット オブジェクトがあり、新しい行でフォーマットされた double が必要です。指示では、新しい toString メソッドで数値フォーマッタを必要とせず、古い toString() メソッドで「ほとんどの作業」を処理できるようにする必要があると書かれていますが、この double をフォーマットする方法がわかりません。
ここにいくつかのコードがありますので、私が何を意味するかを見ることができます:
import java.text.NumberFormat;
public abstract class First {
public First(int x, double y)
protected int num = x;
protected double num2 = y;
}
public String toString()
{
NumberFormat x = NumberFormat.getCurrencyInstance();
return "Int num: " + num +
"\n num2: " + x.format(num2);
}
}
次に、子クラスがあります。
public class Second extends First {
protected double num3;
public Second(int x, double y, double z)
{
super(x, y);
num3 = z
}
public String toString()
{
return super.toString() + "\n num3 " + num3;
}
}
これを行うと(無関係なコードをたくさん省略しました)動作しますが、num2が親クラスにあるように、num3をお金のようにフォーマットする必要がありますが、子クラスにフォーマッタオブジェクトを持つことはできません。
誰かが私を正しい方向に押し進めることができれば、とても感謝しています。