java.lang.Class.forName(String name, boolean initialize, ClassLoader loader)方法

描述

Java.lang.Class.forName(String name, boolean initialize, ClassLoader loader) 方法返回与给定字符串名的类或接口的Class对象,使用给定的类加载器。

指定的类加载器加载的类或接口。如果该参数加载器loader 为空,通过引导类加载器加载类。当类被初始化的初始化initialize参数为true,如果它没有被初始化。

声明

以下是java.lang.Class.forName()方法的声明

[java] view plain copy

    1. public static Class<?> forName(String name, boolean initialize, ClassLoader loader) throws ClassNotFoundException

参数

  • name -- 这是所需类的完全限定名称。
  • initialize -- 这说明这个类是否必须初始化。
  • loader -- 这是必须加载的类的类加载器。

返回值

此方法返回所需的类的类对象。

异常

  • LinkageError -- 如果联动失败。
  • ExceptionInInitializerError -- 如果这种方法所引发的初始化失败。
  • ClassNotFoundException -- 如果类不能位于由指定的类加载器。

实例

下面的例子说明了如何使用java.lang.Class.forName()方法。

[java] view plain copy

  1. import java.lang.*;
  2. public class ClassDemo {
  3. public static void main(String[] args) {
  4. try {
  5. Class cls = Class.forName("ClassDemo");
  6. // returns the ClassLoader object
  7. ClassLoader cLoader = cls.getClassLoader();
  8. /* returns the Class object associated with the class or interface
  9. with the given string name, using the given classloader. */
  10. Class cls2 = Class.forName("java.lang.Thread", true, cLoader);
  11. // returns the name of the class
  12. System.out.println("Class = " + cls.getName());
  13. System.out.println("Class = " + cls2.getName());
  14. }
  15. catch(ClassNotFoundException ex) {
  16. System.out.println(ex.toString());
  17. }
  18. }
  19. }

让我们来编译和运行上面的程序,这将产生以下结果:

[java] view plain copy

  1. Class = ClassDemo
  2. Class = java.lang.Thread
时间: 2024-10-12 13:53:42

java.lang.Class.forName(String name, boolean initialize, ClassLoader loader)方法的相关文章

java.lang.NumberFormatException: empty String

1.错误描述 java.lang.NumberFormatException: empty String at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1020) at java.lang.Double.parseDouble(Double.java:540) service.impl.BillServiceImpl.exportBillExcel(BillServiceImpl.java:301) a

spring Mongodb查询索引报错 java.lang.NumberFormatException: empty String

笔者在mongo3.4/4.0环境下使用以下命令创建索引, db.getCollection("xxx.com").createIndex({ mobile: "" }, { name: "mobile_mac" }) 执行以下demo查询索引 mongoTemplate.indexOps(collection).getIndexInfo(); #笔者正式环境不是这么写的,这里方便大家理解,使用语法糖方式的代码 ;p 每次走到xxx.com表的时

Spring的java.lang.IndexOutOfBoundsException: Remember that ordinal parameters are 1-based!异常处理方法

使用Spring提供的模板类HibernateDaoSupport,如果单纯的使用'命名参数'的形式编写HQL语句如: 1 public class UserDaoImpl extends HibernateDaoSupport implements IUser { 2 3 4 @Override 5 public User login(String userName, String pwd) { 6 String hql="from User as u where u.username=:us

java.lang.NoSuchMethodError: ognl.SimpleNode.isEvalChain(Lognl/OgnlContext;)Z解决方法

运行JavaEE项目时出现如下错误: java.lang.NoSuchMethodError: ognl.SimpleNode.isEvalChain(Lognl/OgnlContext;)Z at com.opensymphony.xwork2.ognl.OgnlUtil.isEvalExpression(OgnlUtil.java:245) at com.opensymphony.xwork2.ognl.OgnlUtil.checkEnableEvalExpression(OgnlUtil.

eclipse中部署web项目时报错java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener的解决方法

解决方案: 1.右键点击项目--选择Properties,选择Deployment Assembly,在右边点击Add按钮,在弹出的窗口中选择Java Build Path Entries 2.点击Next,选择Maven Dependencies 3.点击Finish,然后可以看到已经把Maven Dependencies添加到Web应用结构中了 操作完后,重新部署工程,不再报错了.然后我们再到.metadata\.plugins\org.eclipse.wst.server.core\tmp

HBASE遇到的java.lang.OutOfMemoryError: unable to create new native thread解决方法

简单分享一下,类似问题的解决方法 刚才在某机器上上xxx用户下压测时遇到这个问题,连xxx都进不去了 说明xxx用户下无法创建跟多的线程了(当然root用户没这个问题) 系统能够创建的最大线程数:(MaxProcessMemory - JVMMemory – 系统内存) / (ThreadStackSize) = Number of threads 有两种方式: 减少xxx下的ThreadStackSize 增加xxx下的nproc数量 修改 [[email protected]]$ ulimi

java.lang.IllegalArgumentException: Request header is too large的解决方法

<Connector port="8080" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="8443" maxHttpHeaderSize="65536" maxPostSize="4194304"                 URIEncoding

经常遇到的java.lang.OutOfMemoryError: unable to create new native thread解决方法

简单分享一下,类似问题的解决方法 刚才在某机器上上xxx用户下压测时遇到这个问题,连xxx都进不去了 说明xxx用户下无法创建跟多的线程了(当然root用户没这个问题) 系统能够创建的最大线程数:(MaxProcessMemory - JVMMemory – 系统内存) / (ThreadStackSize) = Number of threads 有两种方式: 减少xxx下的ThreadStackSize 增加xxx下的nproc数量 修改 [[email protected]]$ ulimi

java.lang.ClassNotFoundException: XXX (no security manager: RMI class loader disabled)

在搞RMI远程发布,consumer去获取rmi远程服务的代理对象的时候出现了如下的错误 问题发现: 由于我发布的对象的包路径和获取的对象的包路径不一致,导致了这样的问题 解决方案: 包路径改为一致就可以了 原文地址:https://www.cnblogs.com/arebirth/p/errorrmisecuritymanager.html