类只有被加载到JVM中才能运行。ClassLoader(类加载器)的作用就是将class文件加载到JVM中,程序就可以正确运行了,但类的加载时动态的,并不会一次性加载所有的class文件,而是根据需要去动态加载。
- 类加载的方式
1. 隐式加载:使用new等方式创建对象时,会隐式地调用类的加载器把对应的类加载到JVM中。
2. 显示加载:通过直接调用Class.forName()方法来把所需的类加载到JVM中。
- 三种类加载器
1. Bootstrap Loader(启动类加载器)
最顶层的加载类,主要加载核心类库,负责加载系统类。开发者无法直接获取到启动类加载器的引用,所以不允许直接通过引用进行操作。
2. Extension ClassLoader(扩展类加载器)
主要负责加载扩展类
3. AppClassLoader(自定义类加载器)
主要负责加载应用类