Get actual type of generic type argument on abstract superclass

后端 未结 6 1147
自闭症患者
自闭症患者 2020-11-27 20:08

I have a class like:

public abstract class BaseDao {

  protected Class getClazz() {
     return T.class;
  }

  /         


        
6条回答
  •  栀梦
    栀梦 (楼主)
    2020-11-27 21:13

    If Spring framework is available, you can do like here:

    import org.springframework.core.GenericTypeResolver;
    
    public abstract class BaseDao {
    
        protected Class getClazz() {
            return (Class) GenericTypeResolver.resolveTypeArgument(getClass(), BaseDao.class);
        }
    
    }
    

提交回复
热议问题