摘要:
很早计划写篇研究JVM类加载源码的,忙于项目一直没时间深入研究,最近又要换工作,怕最近没时间研究了。之前一些粗浅的研究,主要是defineClass()和loadClass()方法在JVM源码中的几个相关位置,作个简单记录。1.defineClass由字节码加载自定义类,最终归结于java.lang.ClassLoader. defineClass0()这个native方法(关于java系统类层面的类加载机制,参见之前的两篇文章,本文只涉及JVM的c/c++层面源码)。该方法通过jni实现,对应的c代码位于:%openjdk-home%\jdk\src\share\native\java\la 阅读全文