zoukankan      html  css  js  c++  java
  • 不同的类加载器作用与加载动作分析

    在之前【http://www.cnblogs.com/webor2006/p/8905978.html】理论上的介绍了一下关于类加载的一个层次体系,回顾一下:

    那如何来验证上图的这种关系呢?下面用代码来验证,如下:

    实验一:

    那先来看一下这个方法的一个官方说明:

    关于这句话的含义其实可以从如下图中可以看出:

    而简单看一下它的具体实现:

    好对方法有了简单了解之后,回到代码上来:

    在运行之前先来查看一下getParent()的官方说明:

    再来看一下它的具体实现:

    好~~再回来看一下代码的输出:

    是不是跟开篇贴的层次图是一样的。其中系统类加载器也叫应用类加载器,为什么呢?

    秒懂了吧,好接下来再来看另外一个实验:

    实现二:

    这次又用到了一个新的API,所以先了对它做个初步的了解:

    好,那咱们来将这个类加载器打印出来看一下会是啥:

    这样两者就关联上了,接下来去加载一个资源,这里的资源就以工程中的字节码class文件的加载为例,如下:

    这里又有一个新的API,如下:

    【注意】:上两个图片中的资源名称中的classloader写错了,写成了classloadder,人懒这里就不修改了,做个说明~~

    当然也先了解一下这个方法:

    好,继续回到代码:

    通过上面的实例发现有多种获取ClassLoader的方式,下面总结一下:

    其中最后一种方式用得比较少,了解一下既可。下面再来看一下对于不同的类它所对应的类加载器都是什么,其实之前就已经做过实现,这里再来回顾一下:

    因为:

  • 相关阅读:
    2016.5.11_经典试题-回文算法【ABAP】
    shell基础知识
    python笔记2
    python笔记1
    vmware rdm
    网页中图片显示方向与实际图片方向不一致
    vue 弹性布局 实现长图垂直居上,短图垂直居中
    IE10 解决input file 同一文件不触发onchange事件
    04. pt-deadlock-logger
    03. pt-config-diff
  • 原文地址:https://www.cnblogs.com/webor2006/p/9029910.html
Copyright © 2011-2022 走看看