java虚拟机类加载双亲委派模型
双亲委派模型除了顶层的加载器其它加载都必须有自己的父类加载器。
创新互联公司是一家集网站建设,广平企业网站建设,广平品牌网站建设,网站定制,广平网站建设报价,网络营销,网络优化,
广平网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
双亲委派模型:如果一个类收到了加载类的请求它首先会交给父类加载器去加载而且每一层都是这样。如果父类最终反馈不能加载子加载器才会加载。
加载器的分类
启动加载器:这个加载器负责加载JAVA_HOMElib下面的JAR而且需要虚拟机识别。否则即使手动放到当前目录也不会加载。它不是java类嵌套在虚拟机中是虚拟机的一部分由c++编写。
扩展类加载器:它负责加载JAVA_HOMElibext中的JAR开发者可以直接使用当前加载器。
应用程序加载:一般也叫做系统类加载器它负责用户路径classpath下的类库。如果程序中没有扩展自己的加载器一般默认都是当前的类加载。
补充:类加载器用于类加载,个类加载器都拥有一个独立的命名空间比较2个类是否相等的首要条件便是需同一个类加载否则2个类源于同一个Class文件。同一个虚拟机但是加载器不一样就不会相等。
编码分析
public class Test {
public static void main(String[] args) {System.out.println(System.class.getClassLoader());}}
最终输出为null之前小编已经说到rt.jar由系统加载器加载(System类所属rt.jar)。他是由虚拟机内部加载的所以在java运行时获取为null。
以上就是小编对于java虚拟机类加载双亲委派模型的全部介绍,各位大神有感兴趣的可以在下面发表自己的看法。
名称栏目:java虚拟机类加载双亲委派模型
浏览路径:
http://kswjz.com/article/cjjsoi.html
扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流