Я пытаюсь реорганизовать следующий случай:Java/Рефакторинг переключатель случай
class Gen{
public void startClick(A a, B b, List<C> lstC, SortX sort){
for (int i=0; i<lstC.size(); i++){
try{
// some code with try and catch statement
switch (sort){
case SortA:
newOne(a, b, lstc);
break;
case SortB:
otherfunction(a);
break;
case SortC:
someotherfunction(lstC, a);
break;
}
}
} catch (Exception e){ //some code}
}
}
Я пытаюсь создать в и случае объекта, как мы видим здесь: http://sourcemaking.com/refactoring/replace-conditional-with-polymorphism
Так я создаю объект: SortOfType
, а затем для каждого случая создайте также объект (SortA
, SortB
, SortC
). Функция в SortOfType
получает экземпляр Gen
, а значит другие объекты Sort. То, что я не делаю, - это вызвать sortOfType для класса Gen. Как я могу это сделать? этот рефакторинг возможен здесь?
Там нет такого понятия, как 'exception', и нет' lstc' переменная там. Однако есть переменная 'Exception' и' lstC'. И я не уверен, что такое 'clase' ... – Doorknob
Я не совсем понимаю, что вы здесь делаете. Вы можете это понять? – Woot4Moo