什么是 Java 类加载机制?
Java 虚拟机一般使用 Java 类的流程为:首先将开发者编写的 Java 源代码(。java 文件)编译成 Java 字节码(。class 文件),然后类加载器会读取这个 .class 文件,并转换成 java.lang.Class 的实例。有了该 Class 实例后,Java 虚拟机可以利用 newInstance 之类的方法创建其真正对象了。
ClassLoader 是 Java 提供的类加载器,绝大多数的类加载器都继承自 ClassLoader,它们被用来加载不同来源的 Class 文件。
Class 文件有哪些来源呢?
上文提到了 ClassLoader 可以去加载多种来源的 Class,那么具体有哪些来源呢?
首先,最常见的是开发者在应用程序中编写的类,这些类位于项目目录下;
然后,有 Java 内部自带的 核心类 如 java.lang、java.math、java.io 等 package 内部的类,位于 $JAVA_HOME/jre/lib/ 目录下,如 java.lang.String 类就是定义在 $JAVA_HOME/jre/lib/rt.jar 文件里;
另外,还有 Java 核心扩展类,位于 $JAVA_HOME/jre/lib/ext 目录下。开发者也可以把自己编写的类打包成 jar 文件放入该目录下;
最后还有一种,是动态加载远程的 .class 文件。
以上就是潍坊计算机培训给大家做的内容详解,更多关于IT课程的学习,请继续关注潍坊计算机培训。