加载以下文件
通过观察,我们发现
引导类加载器,确实只加载了java home下的/jre/lib目录下面类
扩展类加载器加载了java扩展目录里面的类
但是, 应用程序类加载器, 加载的类包含了java...以后, 当再次使用到这个类的时候, 直接去问应用程序类加载器, 有这个类么?...我们看到, findLoaderClass(name)方法调用了自己的一个方法findLoadedClass0, 这个方法是native的, 也就是是本地方法, 使用c++实现的, 我们不能看到底部的具体实现细节了...但是大致的逻辑就是在已经加载的类中查找有没有com.lxl.jvm.Math这个类, 如果有就返回Class类信息.
?...但是这个java.lang.String是rt.jar中的类, 不是我们自定义的类, 加载了rt.jar中的java.lang.String类以后, 去找main 方法, 没找到.....结果就跑出了找不到