?????????????????????????Java?????????????Java????????????????????????????
???????????????????????????????????????????????????
????1.??????
?????????????? ?????????????class?????????棬???????????Java.lang.Class????????????????????κ?????????????????????java.lang.Class????
??????????????????????????????б?????????е??????????java.lang.Class?????????????????JVM?У???????????????????
??????????????????????????
??????JVM?????????γ???????????????????????????ν???
??????BootStrap ClassLoader??????????? ?????????????????????????????Java??д??????JVM????????
??????Extension Classloader????????????
??????System Classloader???????????
????????????????????
????????????????????????????????ν???

 

public  class ClassloaderDemo{
public static  void main(String[] args){
System.out.printlb(ClassLoaderDemo.class.getClassLoader().getName());
System.out.println(System.class.getClassloader());
ClassLoader classloader = ClassLoaderDemo.class.getClassLoader());
while(loader!=null){
System.out.println(loader.getClass().getName());
loader=loader.getParent();
}
}

 

??????????????????????JVM?????????????Java??
????2.???????????????????

 

????<1>????????ν???????????????????????????????Class???????Class??????????????????Class??????????????????????????????????????                            ????????????????
????<2>??????У??????????????????????????Class????и??????????????????????????????·???м??????
????<3>??????????????????????б????????Class???????棬?????????????????Class????????????????????????Class????е??????в??????Class????              ?????????????????????????????????????????????Class??JVM???????????????????Ч?????
??????????????????????????????—>?????????—>??????????—>?????????
?????????????
????<1>??JVM????????????????????????????????????????
??????????????????????????????е??????????A??????????B??JVM????ü???A??????????????B???????????ClassLoader??loadeClass???????        ????????????????????
????<2>????????????????????????и??????????????
???????????
?????????е????????????????м??????????????????????????????????????????ClassNotFoundExcetpion?????????????????????????????????                     getChild ()??????????У????????????????????????
??????????????????д??????Java.lang.System?
????????????д?????????JVM??л???????????????JVM????????????????д?????????????????м??????????????????ClassLoader??