私はabstract class A
を持っており、そのサブクラスはString Title
とString Description
のプロパティを持つように強制します。したがって、B extends A
の場合、BはBのすべてのインスタンスで同じ値を持つプロパティTitleを持つことが保証されます。サブクラス固有の情報を格納する方法は?
Javaが静的抽象メソッド(すべてのサブクラスになければならない静的メソッド)を許可する場合、ただ
public abstract class A {
public static abstract String getTitle();
public static abstract String getDescription();
}
私がこれまでに作ってみた最高のアイデアを書きdは、各サブクラスのための個別のタイトルを格納列挙と説明を使用することです。そうすれば、私はすべてのTitle
を単一のループで見ることができ、必要なタイトルのサブクラスをインスタンス化できます(これが望ましい動作です)。残念ながら、サブクラスを追加するたびに列挙型を変更する必要があります。より良い方法がありますか?
ありがとうございます。しかし、タイトルを知る前にクラスをインスタンス化したくないのであればどうしますか?私のデザインを再考すべきでしょうか? 私が抱えている問題は、ユーザーにサブクラスを選択させることです。今私はそれが良い決断ではないと思う。 –