Использование шаблона фабрики как предложенный amit, является очень хорошим решением этой проблемы, и это также общее решение, которое гарантированно работает. Однако предлагаемая альтернатива использования отражения может быть проще в некоторых случаях. Это практический пример того, как отражение может быть использовано в вашем конкретном случае:
class SoapObjectToModel<T> {
private Class<T> type;
public SoapObjectToModel(Class<T> type) {
this.type = type;
}
public ArrayList<T> convert(SoapObject soapObject) {
try {
ArrayList<T> result = new ArrayList<T>();
result.add(type.newInstance());
return result;
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
return null;
}
}
Сколько раз это задавали? –