ITPub博客

首页 > IT职业 > IT图书 > java反射面试题有哪些

java反射面试题有哪些

IT图书 作者:xiewei 时间:2021-09-11 10:01:16 0 删除 编辑

在学习完理论的编程知识后,我们就可以做一些面试题来检验所学。虽然说面试前都是比较紧张的,但是事先准备充分总能增加不少信心。反射这个模块在调用未知方法上非常方便,这也是我们频繁使用的原因。考题以基础的反射知识点为主,偶尔还会涉及一些代码示例操作。下面我们就来看看反射的面试题吧。

1.什么是反射?

主要是指程序可以访问、检测和修改它本身状态或行为的一种能力

在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法

Java反射机制主要提供了以下功能:

(1)在运行时判断任意一个对象所属的类。

(2)在运行时构造任意一个类的对象。

(3)在运行时判断任意一个类所具有的成员变量和方法。

(4)在运行时调用任意一个对象的方法。

2.哪里用到反射机制?

JDBC中,利用反射动态加载了数据库驱动程序。

Web服务器中利用反射调用了Sevlet的服务方法。

Eclispe等开发工具利用反射动态刨析对象的类型与结构,动态提示对象的属性和方法。

很多框架都用到反射机制,注入属性,调用方法,如Spring。

3.反射机制的优缺点

优点:可以动态执行,在运行期间根据业务功能动态执行方法、访问属性,最大限度发挥了java的灵活性。

缺点:对性能有影响,这类操作总是慢于直接执行java代码。

4.怎么实现动态代理?

首先必须定义一个接口,还要有一个InvocationHandler(将实现接口的类的对象传递给它)处理类。再有一个工具类Proxy(习惯性将其称为代理类,因为调用他的newInstance()可以产生代理对象,其实他只是一个产生代理对象的工具类)。利用到InvocationHandler,拼接代理类源码,将其编译生成代理类的二进制码,利用加载器加载,并将其实例化产生代理对象,最后返回。

以上就是java反射面试题的一些展示,相信学会反射的小伙伴,上方的题目大部分都是能答出来的。对于自己薄弱的知识点,还需要反复的练习。更多Java学习指路:java教程

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2143/viewspace-2830998/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: python bin函数应用
请登录后发表评论 登录
全部评论

注册时间:2019-04-16

  • 博文量
    0
  • 访问量
    654