通过抽象类的通用行为

时间:2015-01-14 17:15:33

标签: android generics abstract-class

我正在使用GSON库为我的模型提供 to-json from-json 功能。 例如,我需要在商店实体

中执行此操作
    public String toJSON() {
        Gson gson = new Gson();
        return gson.toJson( this );
    }

    public static Store fromJSON( String json ) {
        Gson gson = new Gson();
        return gson.fromJson(json, Store.class);
    }

必须对其他类进行相同的操作,唯一的区别是 fromJSON 方法中的返回类型。 现在我想要一个抽象类为它的孩子提供这种行为。类似下面的东西当然不正确

public abstract class JSONModel<T> {

    public String toJSON() {
        Gson gson = new Gson();
        return gson.toJson( this );
    }

    public static T fromJSON( String json ) {
        Gson gson = new Gson();
        return gson.fromJson(json, T.class);
    }
}

0 个答案:

没有答案