父类加载器为应用类加载器 为什么需要自定义?
ClassLoader类是一个抽象类,其后所有的类加载器都继承自ClassLoader(不包括启动类加载器)
常用方法:
获取方式:
四种类加载器并非继承关系,只是为了实现双亲委派机制的上下级加载方式
自定义java.lang.String类,但是在加载自定义String类的时候会率先使用引导类加载器加载,而引导器加载器在加载的过程中会先加载jdk自带的文件(rt.jar包中java\lang\String.class),报错信息说没有main方法就是因为加载的是rt.jar包中的String类。这样可以保证对java核心源代码的保护,这就是沙箱安全机制。
在JVM中表示两个class对象是否为同一个类存在的两个必要条件: