直接内存和堆内存:https://blog.csdn.net/u012895369/article/details/80464985
JVM模型:https://blog.csdn.net/qq_28764557/article/details/101229990
.java编译为.class,加载到虚拟机中。
类加载器的核心认识:
打印:
启动类加载器是c语言写的。
--------------------------------------------------------------------------------
自定义的类加载器:两个核心的方法。
------------------------
双亲委派原则,要是类路径下有User1的话就用应用类加载器加载,不用自定义的加载器加载了。
自定义的类加载器的路径。
-------------------
自定义类加载器,继承类,覆盖findClass方法。
--------------------
双亲委派机制:
-----------------
下半节课。
-----------------
面试的点:打破双亲委派。
双亲委派希望的是:同一个类,在相同的包名下面只有一份的。
如何打破双亲委派机制:重写loadClass。
类加载器里面就是findclass和loadclass方法。
------
打破双亲委派:https://www.cnblogs.com/joemsu/p/9310226.html
1.重写classload方法
2.线程上下文类加载器