java相关面试题-反射+泛型

本文探讨了Java中的反射与泛型。反射允许动态获取类信息和调用对象方法,增强了程序的灵活性,但可能导致维护问题和性能下降。获取类对象的方式包括Class.forName、.class和getClass()方法,而new操作符创建对象的效率高于反射。泛型是一种编译时期的擦除机制,用于类型检查,防止运行时的ClassCastException,其类型参数在编译时被擦除,泛型工作原理基于编译器的类型检查和类型擦除。

java相关面试题-反射+泛型

反射

1.反射的作用是什么?
反射是对于任意的一个类,都可以知道这个类的所有属性和方法,对于任何一个对象,都能够调用他的任意方法和属性,这种动态获取信息以及动态调用对象方法的功能称为反射。
2.反射的优缺点是什么?
优点:
a.能够动态获取类的实例,对象;
b.增加程序的灵活性和拓展性,降低耦合性,提高自适应能力
缺点:
反射计数绕过了原带吗的计数,因此会带来维护问题。并且反射本质上就是自省的过程,在性能方面比较低
如何拿到类的对象?
1.使用Class.forName 方法来获取一个类对象
2.使用.class方法
3.创建一个类对象调用getClass()方法
使用反射创建对象的效率高,还是使用new创建对象的效率高?
使用new创建对象的效率高,因为通过反射还需要查找类的资源,使用类加载器创建对象,过程繁琐,所以效率方面new 的效率要高一些。

Class<?> c1=Class.forName("//类名");
Constructor [
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值