Java实例化泛型Java实例化泛型

核心代码(可复制):

public D newUsr(){
        D newUsr;
        try {
            // 通过反射获取model的真实类型
            ParameterizedType pt = (ParameterizedType) this.getClass().getGenericSuperclass();
            Class<D> clazz = (Class<D>) pt.getActualTypeArguments()[0];
            // 通过反射创建model的实例
            newUsr = clazz.newInstance();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
        return newUsr;
    }

那个数组下标是对应的传进来的第几个泛型。

相关文章: