classload的详解
ClassLoader翻译过来就是类加载器,普通的 Java 开发者其实用到的不多,但对于某些框架开发者来说却非常常见。理解ClassLoader的加载机制,也有利于我们编写出更高效的代码。ClassLoader的具体作用就是将class文件加载到jvm虚拟机中去,程序就可以正确运行了。但是,jvm启动的时候,并不会一次性加载所有的class文件,而是根据需要去动态加载。想想也是的,一次性加载那么多jar包那么多class,那内存不崩溃。本文的目的也是学习ClassLoader这种加载机制。 备注:本文篇幅比较长,但内容简单,大家不要恐慌,安静地耐心翻阅就是 Class文件的认识 我们都知道在Java中程序是运行在虚拟机中,我们平常用文本编辑器或者是IDE编写的程序都是.java格式的文件,这是最基础的源码,但这类文件是不能直接运行的。如我们编写一个简单的程序HelloWorld.java public class HelloWorld { public static void main (String[] args){ System.out.println( "Hello world!" ); } } 1 2 3 4 5 6 1 2 3 4 5 6 如图: 然后,我们需要在命令行中进行java文件的编译 javac HelloWorld .java 1 1 可以看到目录下生成了