斗破苍穹2,JAVA一天一个问题,读书手抄报

下面有关java classload花魁er说法正确的是()?(不定项)

A.ClassLoader便是用来动态加韩央央载class文件到内存咱们说网调地带当顶用的

B.JVM在断定两个class是否相一起,只用判别类名相同即可,和类加载器无关

C.ClassLoader运用的是双亲托付模型来查找类的

D.Java默许供给的三个ClassLoader是Boostrap ClassLoader,Extensi丹on ClassLoader,App ClassLoader


参考答案:ACD

JDK中供给了三个ClassLoader,依据层级从高到低为:

Bootstrap ClassLoader,首要加载JVM本身工作需要的类。

Exten一品江山sion ClassLoade皇帝掌上珠r,首要加载%JAVA_HOME%\lib\ex餐风露宿t目录下的库类。

Applcls300ication ClassLoader,首要加载Classpath指定的库类,一般情况下这是李时珍程序中的默许类加载器,也是ClassLoader.getSystemClassLoader() 的返回值。(这儿的Cl丘疹asspa松山湖th默许指的是环境变量中装备的Classpath,但纪姿含是能够在履行Java指令的时分斗破天穹2,JAVA一天一个问题,读书手抄报运用-cp 参数来修改当护肤品前程序运用的Classpath)

JVM加载类的完结方法,咱们称为 双亲托付模型:

假如一个类加载器收到了类加载的恳求,斗破天穹2,JAVA一天一个问题,读书手抄报他首要不会自己去测验加载这个类,而是把斗破天穹2,JAVA一天一个问题,读书手抄报这个恳求托付给自己的父加载器,每一层的类加载器都是如此,因而一切的类加载恳求终究都应该传送到顶层的Boo斗破天穹2,JAVA一天一个问题,读书手抄报tstrap Cl斗破天穹2,JAVA一天一个问题,读书手抄报assLoader中,只斗破天穹2,JAVA一天一个问题,读书手抄报有当父加载器反应自己无法完结加载请三里屯求时,子加载器才会测验自己加载。

双亲托付模型的重要用处是卡为了处理类载入过程中的安全性问题。

假设有一个开发者自己编写了一个名为Java.lang.Object的类,想借此诈骗JVM。现在他要运用自定义ClassLoader来加载自己编写的java.lang.Object类。但是走运指尖的是,双亲托付模型不会让他成功。因红通女逃犯黄红为J玻璃酸钠滴眼液VM会优先在Bootstrap Cl目送斗破天穹2,JAVA一天一个问题,读书手抄报assLoader的途径下找到java.lang.Object类,并载入它

评论(0)