社区
Java SE
帖子详情
class.forName()有什么作用啊?
guwen391
2008-09-11 05:07:32
如题,它的作用是 什么啊 ?
...全文
196
13
打赏
收藏
class.forName()有什么作用啊?
如题,它的作用是 什么啊 ?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fytain
2008-09-11
打赏
举报
回复
[Quote=引用 1 楼 liuzhenfeng 的回复:]
JVM 可以查找并加载一个类,这与Java的执行原理有关,他会返回一个Class对象,当然也会执行类中的静态代码....
[/Quote]
好像1.4以前,执行class.forName()会默认执行静态代码,1.5就
不再执行了。
要想完整搞明白这个,需要懂Java虚拟机的一些原理,可以看<深入Java虚拟机>那本书,如果你不歉头大的话,呵呵。
minisun2000
2008-09-11
打赏
举报
回复
说白了就是在JVM上加载一个类
zjjun
2008-09-11
打赏
举报
回复
我只见过jdbc连数据库时 用他获得驱动类
guoxyj
2008-09-11
打赏
举报
回复
反射机制
yangdu328
2008-09-11
打赏
举报
回复
参数:类的名字 属于字符串类型
返回值:class 对象
用来动态的加载一个类,获得并使用该类的属性和方法,可以动态的创建该类的对象
****************************************************************************
使用反射的步骤
1、获得我们想操作的类的java.lang.Class对象
得到Class对象有三种处理方式:
(1)在编译期不知道类名,但在运行期可以获得该类名:Class c=Class.forName(“类名”);
(2)在编译期知道类名:Class c= 类名.class,若为基础类型,还可这样用(例如为整型)Class c= Integer.TYPE;
(3)如果一个类的实例已经得到:Class c=对象名.getClass();
2、取得该类中定义的所有的方法的列表(如果含有declared,则获得所有声明的方法,否则只能获得public类型的方法)
3、使用reflection API来操作第二步获得的信息
yyjl1983
2008-09-11
打赏
举报
回复
[Quote=引用 3 楼 lybjust 的回复:]
一种类的实例化
[/Quote]
就是这个
ZiSheng
2008-09-11
打赏
举报
回复
参数:类的名字
返回值:class 对象
milooxu
2008-09-11
打赏
举报
回复
反射用,动态的获得一个类的模板,加载这个类。
lovelp123
2008-09-11
打赏
举报
回复
[Quote=引用 2 楼 beguile 的回复:]
我只见过jdbc连数据库时 用他获得驱动类
[/Quote]
这个对
goosman
2008-09-11
打赏
举报
回复
反射机制,是java作为准动态语言的一个重要的特征,反射带来了很大的灵活性,同时在一定程度上破坏了封装性
lybjust
2008-09-11
打赏
举报
回复
一种类的实例化
热带鱼2020
2008-09-11
打赏
举报
回复
我只见过jdbc连数据库时 用他获得驱动类
刘振锋
2008-09-11
打赏
举报
回复
JVM 可以查找并加载一个类,这与Java的执行原理有关,他会返回一个Class对象,当然也会执行类中的静态代码....
【JDBC篇】
Class
.forName原理剖析
Class
.forName原理剖析,为什么
Class
.forName可以注册驱动?
Class
.forName的
作用
以及为什么要用它
Class
.forName(xxx.xx.xx) 返回的是一个类 首先你要明白在java里面任何
class
都要装载在虚拟机上才能运行。这句话就是装载类用的(和new 不一样,要分清楚)。 至于什么时候用,你可以考虑一下这个问题,给你一个字符串变量,它代表一个类的包名和类名,你怎么实例化它?只有你提到的这个方法了,不过要再加一点。 A a = (A)
Class
.forName("pa
class
.forname和
class
loader区别
网上能找到讲
class
.forname和
class
loader区别的一堆文章,但多数不是自己想要的,结合别人和自己的分析,重新整理下
class
.forname和
class
loader二者区别。 说到
class
.forname和
class
loader二者,必须先要了解java类的装载过程。 java类的装载过程 1. 加载 类的加载主要干三件事 通过类的全限定名来获取定义此类的二进制字节流 将这个类字节流代表的静态存储结构转为方法区的运行时数据结构 在堆中生成一个代表此类的java.lang.C
Java 中 `
Class
.forName()` 用法详解
是 Java 反射机制中的重要方法,用于动态加载类并初始化类的字节码。在框架开发和底层实现中经常见到其身影,例如 JDBC 驱动加载和动态代理。本文将带你深入理解的核心功能、用法及注意事项,并通过代码示例逐步讲解。无论你是 Java 小白还是正在学习反射的开发者,希望本篇教程对你有所帮助!// 构造器try {// 动态加载自定义类
Class
Class
.forName()用法详解
一、
CLASS
类概念
Class
也是一个Java类,保存的是与之对应Java类的meta信息(元信息),用来描述这个类的结构,比如描述一个类有哪些成员,有哪些方法等。一般在反射中使用。 详细解释:Java 源程序(.java 文件)在经过 Java 编译器编译之后就被转换成 Java 字节代码(.
class
文件)。类加载器负责读取 Java 字节代码,并转换成 java.lang.
Class
...
Java SE
62,634
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章