本文主要是介绍ClassLoader进阶,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
- 所有jvm在每个类或者接口被java程序首次主动使用才初始化他们。
- 加载详解:
将加载得到的二进制数据放到内存里面,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区的数据结构。
3.类的加载器是继承结构的。根类加载器(BootStrap)扩展类加载器(Extension)系统类加载器(应用加载器System)ExtClassLoader AppClassLoader
4.用户自定义加载器java.lang.ClassLoader的子类
clazz.getClassLoader(),如果clazz是跟类加载器,那么结果为null,因为根类加载器是C++写的,为了安全sun不给你看。
类加载器不会等哪个类首次主动使用时候才去加载,类加载器会预先加载他,等你使用时候不用加加载了,可是呢,当他找不到这个.class这个时候,也不立刻说错了,而是等你用的时候,他才说错,你不用他就是不说。LinkageError.
这篇关于ClassLoader进阶的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!