私は気づいていないクラスの中にいくつかの静的クラスを入れ子にすることができることを数分前に知りました。私は過去にネストされたクラスのないクラスを作成することに慣れてきました。インターフェイス入れ子クラスの静的メソッド
ネストしたクラスを使用すると、支払いの考え方を考慮する必要があるように、オブジェクトやクラスにサブクラスや型がある場合にコードの可読性が向上すると考えられました。
ネストされたクラスを理解し、それを私のコーディングに適用することは、インターフェイスと組み合わせると非常に強力です。
私は現在のプロジェクトにそれを適用して、支払いのクラスとメソッドを設計しました。
public class Payment {
public static class terms{
public static class monthly implements Monthly{
@Override //error here
public static void setDownpayment(double aDownPayment) //and error here
{
}
}
public static class quarterly{
public static void setDownpayment(){
//do something
}
}
public static class semestral{
public static void setDownpayment(){
//do something
}
}
}
}
と、ここで私は、私はこのようにそれを参照することができstatic
するsetDownpayment()
メソッドを作ってみました、私は
public interface Monthly {
public void setDownpayment(double aDownPayment);
}
を作成したインタフェースです:
Payment.terms.monthly.setDownpayment(aDecimalValue);
しかし、それはdoesnの静的メソッドを許可するようです。 2行にエラーがあるので、「//error here
と//and error here
」
どうすれば修正できますか?
その他の解決策または代替方法または設計提案はありますか?
ご協力いただきありがとうございます。
ありがとうございました。 Javaで
最初に飛び出すこと:静的メソッドをオーバーライドすることはできません。 – azurefrog
あなたの質問から話題にはならないが、[通貨を表すためにDoubleやFloatを使用しないのはなぜですか?](http://stackoverflow.com/questions/3730019/why-not-use-double-または浮動小数点から浮動小数点へ) –
どのJavaのバージョンを使用しますか? –