第一个问题:java默认导入了lang包,System类、Integer等类对象都是属于lang包的
第二个问题:Java虚拟机中系统默认三个主要类加载器,每个类负责加载特定位置的类:BootStrap,ExtClassLoader,AppClassLoader。其中BootStrap加载JRE/lib/rt.jar里面的,ExtClassLoader加载JRE/lib/ext/*中的,AppClassLoader加载CALSSPTH指定的所有jar或目录。对于自定义的类一般用的加载器时AppClassLoader。但是顺序是先由它委托给其父类ExtClassLoader,再委托给ExtClassLoader的父类BootStrap,如果这些父类加载的包里面没有自定义的类或者无法加载当前所要加载的类时,才会一级级退回子孙类加载器进行加载。 |