用户自己写一个String类会发生什么?
了解“类加载器”
Java是运行在Java的虚拟机(JVM)中的。我们在IDE里编写的Java源代码先编译成.class的字节码文件,再由ClassLoader将class文件加载到JVM中执行。
JVM中有三层ClassLoader:
1.Bootstrap ClassLoader(启动类加载器):负责加载核心类库,如java.lang.*,构造2和3
2.Extension ClassLoader(扩展类加载器):加载jre/lib/ext目录下的一些扩展的jar
3.Application ClassLoader(应用程序类加载器):加载应用程序的主函数类
4.Custom ClassLoader(用户自定义类加载器):加载指定路径的class文件
双亲委派机制
先会把请求委派给父类加载器,父类找不到就递归查找,给子类加载器再去加载。
所以用户自己写的String类会加载不进内存。