If-else コンストラクトを使用せずに Java でファクトリ パターンを作成できるかどうか、誰かに尋ねられました。だから私は次のように来ます。これがファクトリを使用する良い例であると思われる場合は、入力を提供してください。
public enum EnumButtonFactory {
RADIO(RadioButton.class),
SUBMIT(SubmitButton.class),
NORMAL(NormalButton.class);
private Class<? extends Button> button;
EnumButtonFactory(Class<? extends Button> b) {
this.button = b;
}
public Button get() {
try {
return button.newInstance();
} catch (InstantiationException | IllegalAccessException e) {
e.printStackTrace();
}
return null;
}
}
使い方はとても簡単です
Button button = null;
button = EnumButtonFactory.RADIO.get();
button.click();