转自:
下文笔者将讲述Class.forName()方法的功能简介说明,如下所示:
Class.forName()方法的功能:
在JVM中查找并返回类对应的Class对象
常用于反射实例化一个类的操作
Class.forName()方法语法说明
forName(String className)
- 初始化initialize=true
- 总是使用当前类装载器(也就是装载执行forName()请求的类的类装载器)
- 总是初始化这个被装载的类(当然也包括:装载、连接、初始化)
forName(String className, boolean initialize, ClassLoader loader)
- loader指定装载参数类所用的类装载器,如果null则用bootstrp装载器
- initialize=true时,连接并初始化
- initializ=false时,不会初始化,但可能被连接
例
例1: String className = "User"; Class c = Class.forName(User); UserInterface factory = (UserInterface)c.newInstance(); 例2: package com.java265.other; import java.lang.reflect.Constructor; public class testClass{ public static void main(String[] args) throws Exception { Class clazz = String.class; Constructor constructor = clazz.getConstructor(String.class); String str = (String) constructor.newInstance("java265.com"); System.out.println(str); } } -----运行以上代码,将输出以下信息---- java265.com