2

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();
4

0 に答える 0