类加载子系统负责从文件系统或者网络中加载Class文件,class文件在文件开头有特定的文件标识(CAFF BABY,在类加载子系统的验证阶段执行)。
类加载系统只负责class文件的加载,置语他是否可以运行,则是由执行引擎决定。
加载的类型信息存放于方法区(生成一个大的class实例),除了类的信息,方法区还会存放运行时常量池,可能包含字符串字面量和数字常量(这部分常量信息是class文件中常量池部分的内存映射,也即将class文件中的常量池加载到内存中)
HelloLoader是一个用户自定义的类,因此ClassLoader使用系统加载器加载类,进行验证如果没有抛出异常,那么进行连接,如果字节码遭到恶意修改,ClassLoader会抛出异常,链接完进行初始化,最后执行引擎调用main方法