设为首页 加入收藏

TOP

Java classloader的体系结构(二)
2014-11-24 02:43:26 来源: 作者: 【 】 浏览:4
Tags:Java classloader 体系结构
ate static native Class forName0(String name, boolean initialize,


  ClassLoader loader)


  throws ClassNotFoundException;


  上面中 ClassLoader.getCallerClassLoader 就是得到调用当前forName方法的类的类加载器


  static块在什么时候执行


  当调用forName(String)载入class时执行,如果调用ClassLoader.loadClass并不会执行.forName(String,false,ClassLoader)时也不会执行.


  如果载入Class时没有执行static块则在第一次实例化时执行.比如new ,Class.newInstance()操作


  static块仅执行一次


  各个java类由哪些classLoader加载


  java类可以通过实例.getClass.getClassLoader()得知


  接口由AppClassLoader(System ClassLoader,可以由ClassLoader.getSystemClassLoader()获得实例)载入


  ClassLoader类由bootstrap loader载入


  NoClassDefFoundError和ClassNotFoundException


  NoClassDefFoundError:当java源文件已编译成.class文件,但是ClassLoader在运行期间在其搜寻路径load某个类时,没有找到.class文件则报这个错


  ClassNotFoundException:试图通过一个String变量来创建一个Class类时不成功则抛出这个异常


首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Java UDP聊天程序 下一篇Java设置代理IP访问网站

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: