Это снова, я полагаю, вопрос «передового опыта», потому что я могу придумать некоторые неэффективные способы реализации моего варианта использования.
Мой вариант использования выглядит следующим образом
Я пишу метод MethodManager (своего рода), который помогает конечному пользователю иметь дело с реальными вызовами методов (функций) через пользовательский интерфейс.
Для этой конкретной цели у меня есть класс methodDefinition, который представляет собой объектную форму того, как метод (функция) выглядит в моей системе.
Краткий обзор того, как выглядят члены моего methodDefinition, выглядит следующим образом
methodName -- String
methodInputs -- ArrayList<String>
methodResultType -- enum(STRING,MAP,LIST)
methodResult -- <<variable, on the basis of methodResultType>>
Теперь methodResult является переменной и может быть любым из String, Map или List, в зависимости от того, какое значение methodResultType установлено.
Я создал класс MethodResultType для учета methodResultType, и он выглядит следующим образом
public enum MethodResultType {
LIST,
MAP,
STRING;
}
Теперь я знаю, что должен написать класс для учета methodResult и его переменной природы, основанной на methodResultType, но не могу придумать незапутанный способ.
Будем весьма благодарны за любые предложения / указания на этот счет.
Спасибо
P1nG