У меня есть ряд статических служебных методов этой формы:
StringBuffer Util.doA(String arg0, String arg1, SomeEnum e);
StringBuffer Util.doB(String arg0, String arg1);
StringBuffer Util.doC(String arg0, String arg1, String arg2,String arg3);
StringBuffer Util.doD(String arg0, String arg1, String arg2,String arg3, AnotherEnum e);
etc
Я хочу отобразить JDialog, который создается динамически, например, через конструктор или другой шаблон, и после нажатия кнопки я хочу, чтобы в зависимости от типа диалога вызывался соответствующий служебный метод.
Например. Если JDialog имеет значение type A
, то Actionlistener кнопки должен вызвать Util.doA
, передавая в качестве аргументов данные из полей ввода, а если JDialog имеет значение type B
, я хочу, чтобы actionlistener кнопки вызывал Util.doB
и т. Д.
Типы A, B и т. Д. Мои пользовательские типы. Не являются обязательными для использования. Я просто хочу, чтобы они различали каждый JDialog.
JDialog типа A отличается от JDialog типа B в некоторых полях ввода. Но общий внешний вид похож.
Всего существует около 20 типов и 20 соответствующих утилит.
Есть ли у меня стандартный шаблон этой проблемы?
Я начал расширять JDialog, чтобы каждый пользовательский JDialog создавал себя правильно, а метод actionlistener вызывал соответствующий служебный метод, но в итоге я получил 20 новых классов.
Поэтому я подумал, если есть лучший подход к этому.
Есть идеи?
Спасибо