ClassLoader原理擴展

// -- Resource --

    /**
     * Finds the resource with the given name.  A resource is some data
     * (images, audio, text, etc) that can be accessed by class code in a way
     * that is independent of the location of the code.
     *
     * <p> The name of a resource is a '<tt>/</tt>'-separated path name that
     * identifies the resource.
     *
     * <p> This method will first search the parent class loader for the
     * resource; if the parent is <tt>null</tt> the path of the class loader
     * built-in to the virtual machine is searched.  That failing, this method
     * will invoke { @link #findResource(String)} to find the resource.  </p>
     *
     * @param  name
     *         The resource name
     *
     * @return  A <tt>URL</tt> object for reading the resource, or
     *          <tt>null</tt> if the resource could not be found or the invoker
     *          doesn't have adequate  privileges to get the resource.
     *
     * @since  1.1
     */
    public URL getResource(String name) {
    URL url;

    if (parent != null) { ide

     /×當一個裝載器被請求裝載某個類時,它首先委託本身的parent去裝載,若parent能裝載,則返回這個 類所對應的Class對象×/ ui

        url = parent.getResource(name);

    } else { this

parent不能裝載,則由parent的請求者去裝載。×/ url

        url = getBootstrapResource(name);     }     if (url == null) {         url = findResource(name);     }     return url;     }
相關文章
相關標籤/搜索