Base公共接口实现泛型的类型获取

来源:互联网 发布:数据库与大数据 编辑:程序博客网 时间:2024/06/06 04:03
public class BaseDao<T> implements IBaseDao<T> {    /**     * 实际操作对象的类型     */    private Class<T> clazz;    /**     * 操作对象的对象名     */    private String className;    public BaseDao() {        Type type = this.getClass().getGenericSuperclass();        // 将获取到的类型转换为参数化类型        ParameterizedType tp = (ParameterizedType) type;        // 从参数化类型中获取实际类型        Type[] types = tp.getActualTypeArguments();        // 强转为class字节码对象        clazz = (Class<T>) types[0];        // 从字节码对象中获取参数对象名称        className = clazz.getSimpleName();    }}
阅读全文
0 0