[英]How can I refactor these wrapper methods to get rid of duplicated code?
以下兩種方法用於使用 Google Gson 包裝反序列化:
public static <T> T Deserialize(String jsonData, Type t) {
T obj = null;
try {
obj = new Gson().fromJson(jsonData, t);
} catch (Exception e) {
Log.e(DEBUG_TAG, e.getMessage());
}
return obj;
}
public static <T> T Deserialize(String jsonData, Class<T> toClass) {
T obj = null;
try {
obj = new Gson().fromJson(jsonData, toClass);
} catch (Exception e) {
Log.e(DEBUG_TAG, e.getMessage());
}
return obj;
}
它們幾乎相同,但我想不出一個聰明的方法來擺脫重復的代碼。
有什么建議么?
Class
實現了接口Type
,所以看起來只有第一種方法就足夠了。
編輯:實際上看起來這些方法是單獨實現的。 在重構之前至少閱讀javadoc以了解原因。 感謝 home 指出這一點。
Type
是由Class
實現的接口,因此您可以完全擺脫第二種方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.