0

谁能告诉我这行代码是做什么的?我在一个android教程中学习了它,但无法理解它,谁能告诉我它的细节?

Class ourClass = Class.forName("com.prem.firsttry.STARTINGPOINT");
4

2 回答 2

1

调用 Class.forName("X") 会导致名为 X 的类被动态加载(在运行时)。对 forName("X") 的调用会导致初始化名为 X 的类(即,JVM 在类加载后执行其所有静态块)。Class.forName("X") 返回与“X”类关联的 Class 对象。返回的 Class 对象不是“x”类本身的实例。

Class.forName("X") 加载尚未加载的类。JVM 会跟踪以前加载的所有类。此方法使用调用它的类的类加载器。“X”是所需类的完全限定名称。

于 2013-01-27T07:04:37.947 回答
0

方法加载并链接一个 Java 类。构造一个Class对象并将其提供给您。你可以继续用它制作一个对象newInstance()

这种方法最流行的用途是检查特定类是否存在以及是否可以加载(例如某些 JDBC 驱动程序)。如果不是,此方法将引发异常。这也会导致所述类的静态初始化。

于 2013-01-27T07:01:24.923 回答