Код: Выделить всё
public ReturnType method1(List objects) {
for(T obj: objects) process(obj);
}
public void process(MyType_1 obj) {
doSomething(obj);
}
public void process(MyType_2 obj) {
doOther(obj);
}
Код: Выделить всё
class MyType_1 extends MyType;
Код: Выделить всё
class MyType_2 extends MyType;
Теперь я решаю проблему с помощью дополнительного метода помощи:
Код: Выделить всё
public void helpMethod(MyType obj) {
if(obj instanceof MyType_1) processMyType_1(obj);
if(obj instanceof MyType_2) processMyType_2(obj);
}
Что мне делать?
Обновление: я не хочу добавлять некоторые методы в классы MyType, потому что в моем случае они являются DTO.
Мобильная версия