社区
Java SE
帖子详情
class.forName()有什么作用啊?
guwen391
2008-09-11 05:07:32
如题,它的作用是 什么啊 ?
...全文
198
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对象,当然也会执行类中的静态代码....
Java中
Class
.forName()用法详解
Class
.forName()主要功能
Class
.forName(xxx.xx.xx)返回的是一个类,
Class
.forName(xxx.xx.xx)的
作用
是要求JVM查找并加载指定的类,也就是说JVM会执行该类的静态代码段。 下面,通过解答以下三个问题的来详细讲解下
Class
.forName()的用法。 一.什么时候用
Class
.forName()? 给你一个字符串变量,它代表一个...
Class
.forName()用法详解
Class
.forName()用法详解 主要功能
Class
.forName(xxx.xx.xx)返回的是一个类。
Class
.forName(xxx.xx.xx)的
作用
是要求JVM查找并加载指定的类,也就是说JVM会执行该类的静态代码段。 下面,通过解答以下三个问题的来详细讲解下
Class
.forName()的用法。 一.什么时候用
Class
.forName()? 先来个热身,给你一个字符串变量...
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下
Class
.forName的
作用
是什么,为什么要使用它返回与带有给定字符串名的类或接口相关联的
Class
对象。调用此方法等效于:
Class
.forName(
class
Name, true, currentLoader)其中 currentLoader 表示此类的定义类加载器。例如,以下代码片段返回 java.lang.Thread 类的运行时
Class
描述符。
Class
t =...
Java加载数据库连接驱动为什么要用
Class
.forName()方法?
静态初始化过程,可以阅读一下Thinking in Java 2nd 的第5-8章 JDBC提供的DriverManager类用于跟踪所有可用的JDBC驱动,并在用户需要时选择合适的驱动提供给用户 但是其跟踪不是自动的,必须由可用的JDBC驱动的Driver类自己在DriverManager上进行注册 但是这个注册过程一般是由Driver类加载的时候自动完成的 ...
Java SE
62,634
社区成员
307,266
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章