Java 反射&&动态代理,面试官听了都爱了
// 抽象类,定义泛型<T>
public abstract class BaseDao<T> {
public BaseDao(){
Class clazz = this.getClass();
ParameterizedType pt = (ParameterizedType) clazz.getGenericSuperclass();
clazz = (Class) pt.getActualTypeArguments()[0];
System.out.println(clazz);
}
}
// 实现类
public class UserDao extends BaseDao<User> {
public static void main(String[] args) {
BaseDao<User> userDao = new UserDao();
}
}
// 执行结果输出
class com.entity.User
过了一天,面试官看大家三连了。又给我补充了道题:都说反射会影响性能,有什么方式可以减低它的性能影响吗?
答案:可以使用缓存把反射的元数据存储起来,下一次使用的时候就可以直接从内存获取了。尽可能使用高性能的反射框架(都帮你封装好了,不用自己实现)
欢迎关注我的微信公众号【Java3y】来聊聊Java面试
![](https://tva1.sinaimg.cn/large/006tNbRwly1gb0nzpn8z7g30go0gokbp.gif)
【对线面试官】系列 一周两篇持续更新中!
更多的文章可往:文章的目录导航