New Bee
Topic source太感谢了,看见 教程里的 getParameterizedType() 想了挺久,原来如此。发现之前教程反射那章的 “擦拭法” 最后一部分,子类获取父类的泛型类型,也讲了类似的操作。
https://www.liaoxuefeng.com/wiki/1252599548343744/1265104600263968
Type type = getClass().getGenericSuperclass();
这个不是获取父类class的泛型类型吗?
只能在子类中用,,,怎么父类自己可以获取泛型类型?
这个
abstract class AbstractDao<T>
的用途在文中有提到,就是要被其他的DAO继承,然后作为一个特定DAO的数据访问模式,例如
UserDao extends AbstractDao<User>
也就是说这个抽象类就是作为父类,然后子类的构造器被调用的时候,自动在子类当中被调用,也就是获取到了这个泛型类了。
- 1
好先生的菜
所有操作都是通过子类Dao实例操作,子类实例可以通过继承获取自父类AbstractDao的泛型类型