Java 调用Class.forName()两次
我目前正在阅读类加载器及其层次结构功能。 如果我在以下代码中调用-Java 调用Class.forName()两次,java,class,classloader,Java,Class,Classloader,我目前正在阅读类加载器及其层次结构功能。 如果我在以下代码中调用- ClassA a= Class.forName("com.test.ClassA") 根据我的理解,现在它将在应用程序类加载器的帮助下初始化并加载到内存中。 我有以下问题: 如果我再次调用上述代码,会发生什么?是否会在内存中为“ClassA”创建新实例,还是返回相同的已加载类引用 如果是,根据JavaRetrieved的这一部分,“通过使用单独的类加载器,您还可以从多个源加载相同的类,它们将在JVM中被视为不同的类。” 它有
ClassA a= Class.forName("com.test.ClassA")
根据我的理解,现在它将在应用程序类加载器的帮助下初始化并加载到内存中。
我有以下问题:
a1==a2
顺便说一句:
Class.forName
返回类型为Class
的对象,而不是在forName中传递的类的实例ClassA=Class.forName(“com.test.ClassA”)
不正确。它应该是Class a=Class.forName(“com.test.ClassA”)