类加载的流程
类加载子系统可以看作是 JVM 的搬运工。通过使用 Javac 编译器,我们将编写的代码转换为.class 文件,这样类就可以被真正地加载到 JVM 中,从而实现高效地运行。借助类加载流程,我们将.class 文件中的数据结构存储到了运行时的方法区中,作为后续 Java 程序运行的基础。
因为方法区里存储了类的元数据和静态变量等,所以平时在开发的时候你需要关注方法区的内存使用,避免大量加载类以及定义过多的静态变量导致内存不足。最后还要避免类初始化的循环引用,创建类时,确保类之间的引用关系没有循环,否则可能导致类初始化阻塞。