黑马程序员技术交流社区
标题:
关于泛型的小问题,请指教
[打印本页]
作者:
王维波
时间:
2011-11-6 16:28
标题:
关于泛型的小问题,请指教
public abstract class BaseHibernateDao<T> extends HibernateDaoSupport {
public T create(T entity) throws DataAccessException {
getHibernateTemplate().save(entity);
return entity;
}
public Object load(Class cls, Serializable id) throws DataAccessException {
return getHibernateTemplate().load(cls, id);
}
}
public class CounterDao extends BaseHibernateDao<CounterImpl>{}
对于第一个Create方法使用泛型没问题,但是对于第二个load方法,怎么将型别T的Class信息固化在load方法内部呢,而不需要作为Class cls参数传入了。我试过T.Class,代码提示是有的,但是编译不通过
该贴已经同步到
保持常态0616的微博
作者:
柴亚飞
时间:
2011-11-7 04:31
泛型的作用期间是编译之前和编译中。在编译后,泛型信息被擦除。这就意味着在运行期间是无法得到泛型信息的。
T的固有信息是无法传递到运行期间的。
所有试图在运行期调用类型T的具体类型信息的努力都是无法实现的。
“我试过T.Class,代码提示是有的,但是编译不通过 “,不明白你是这么试的,你能把你编译通不过的代码写上来吗?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2