理解Class.forName的含义

本文详细介绍了Java中Class.forName()方法的用途,该方法用于查找并加载指定的类,执行类的静态代码段。讨论了类装载的两种方法,包括默认使用当前类装载器和手动指定类装载器的区别,以及是否实例化类的差异。对于需要类实例化的场景,Class.forName()更为适用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上文提到的状态栏高度获取中,对Class.forName不太熟悉,这里学习学习。


Class.forName(xxx.xx.xx) 返回的是一个类, .newInstance() 后才创建一个对象,

Class.forName(xxx.xx.xx)的作用是要求JVM查找并加载指定的类,也就是说JVM会执行该类的静态代码段

Class aClass = Class.forName(xxx.xx.xx);
Object anInstance = aClass.newInstance();
Class.forName("").newInstance()返回的是object


官方文档

初始化参数指定的类,并且返回此类对应的Class 对象(不了解Class类的同志,应该首先查看下java反射相关知识)。例如,以下代码片段返回 java.lang.Thread 类对应的Class对象。

Class t =  Class.forName("com.android.internal.R$dimen");

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值