![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
Vransy.
这个作者很懒,什么都没留下…
展开
-
[jvm学习-类加载器]线程上下文类加载器的一般使用模式(获取 - 使用 - 还原)
线程上下文类加载器的一般使用模式(获取 - 使用 - 还原) 首先获取上下文类加载器 ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); try { // 获取当前线程 调用set方法将你想要设置成为类加载器的参数设置进去(targetTccl) Thread.currentThread().setContextClassLoader(targetTccl) // 在MyMethod中显然会调用Thr原创 2020-05-31 00:28:13 · 142 阅读 · 0 评论 -
[jvm学习-类加载器]Current Classloader 当前类加载器
Current Classloader(当前类加载器) 每一个类都会使用自己的类加载器(即加载自身的类加载器) 来去加载其他类(指的是所依赖的类) (PS: 说人话就是 用这个类的加载器去加载 它所依赖的类 例如它所继承的类 ) (PPS :再例如 A 引用了B 那么 A的类加载器 就会去加载B (前提是 B没有被加载)) Context ClassLoader (线程上下文类加载器) 类Thread中的getContextClassLoader()与 setContextClassLoade原创 2020-05-29 23:25:28 · 524 阅读 · 0 评论 -
[jvm学习-类加载器]扩展类,应用类加载器都是JAVA写的,而根类加载器是由C++写的
如题 扩展类,应用类加载器都是JAVA写的,而根类加载器是由C++写的 并且内建于JVM中(归属于JVM的一部分) 根类加载器 (C++) 扩展类加载器 (JAVA) 应用类加载器 (JAVA) 当JVM启动的时候 就会实例化或创建 bootstrap(根类加载器)的对象 由这个对象负责加载appclassloader(应用类加载器) ExtCladdLoader(扩展类加载器) 最开始的阶段是处于C++和JVM的阶段 书上原句: " 当JVM启动时,一块特殊的原创 2020-05-26 23:32:43 · 423 阅读 · 1 评论 -
[jvm学习-类加载器]修改根类加载器目录
当修改根类加载器的加载目录的时候,会造成 Error occured during initinalization of VM 的错误 原因是找不到Object类 当我们要运行一个类的时候 不管启动的什么类 Object类都是其父类 可以这么说 在根类加载器加载时 一定会加载object类 个人总结 如有错误 欢迎指教 ...原创 2020-05-26 23:10:30 · 119 阅读 · 1 评论 -
[jvm学习]Idea中没有创建OUT文件夹JAVA文件编译后所在的位置
Idea中没有创建OUT文件夹JAVA文件编译后所在的位置 IDEA版本 2020.1 学习JVM的过程中,在IDEA创建的Gradle项目跟老师有所差别,老师的项目是有out文件夹存放编译后的class文件 但是我的却没有。网上都说在target文件夹下面(并未发现就放弃了),慢慢搜索后发现 新版Idea的class文件存放在 \项目名\build\classes\java\main\文件夹名 而java文件存放在 \项目名\src\main\java\文件夹名 所以直接复制这个地址就可以直接找到编译出原创 2020-05-10 01:18:31 · 5639 阅读 · 0 评论