【问题标题】:this.getClass().getClassLoader() and ClassLoaderthis.getClass().getClassLoader() 和 ClassLoader
【发布时间】:2013-03-10 20:11:58
【问题描述】:

this.getClass().getClassLoader().getResource() 和 ClassLoader#getResource() 有什么区别?

弗兰克

【问题讨论】:

    标签: java classloader


    【解决方案1】:

    第一个是实际代码,第二个只是pointer 您应该使用哪个类/方法。

    顺便说一句,您应该在对我在your previous question 的回答的评论中提出这个小问题/请求澄清。

    【讨论】:

      【解决方案2】:

      您的意思是“Class#getResource()”和“ClassLoader#getResource()”之间的区别?如果您查看 JVM srcs(推荐),您会发现第一个是后者的便捷包装方法:

      public java.net.URL getResource(String name) {
          name = resolveName(name);
          ClassLoader cl = getClassLoader0();
          if (cl==null) {
              // A system class.
              return ClassLoader.getSystemResource(name);
          }
          return cl.getResource(name);
      }
      

      【讨论】:

        猜你喜欢
        • 2011-04-17
        • 1970-01-01
        • 1970-01-01
        • 2015-04-13
        • 2023-03-21
        • 2013-01-22
        • 1970-01-01
        • 2019-05-30
        • 2010-10-12
        相关资源
        最近更新 更多