编译器加载类要依靠classloader,而classloader有3个级别
从高到低分别是BootClassLoader(名字可能不准确),ExtClassLoader,AppClassLoader.

这3个加载器分别对应着编译器去寻找类文件的优先级别和不同的路径:
BootClassLoader对应jre/classes路径,是编译器最优先寻找class的地方
ExtClassLoader对应jre/lib/ext路径,是编译器次优先寻找class的地方
AppClassLoader对应当前路径,所以也是编译器默认找class的地方

Class.forName(className);
Thread.currentThread().getContextClassLoader().loadClass(className)
两种方式优缺点大家发表下

7 个解决方案

#1


1)Class.forName(className);与调用者相关
2)Thread.currentThread().getContextClassLoader().loadClass(className)与线程相关

更多相关文章

  1. 如何将树路径转换为json对象
  2. Java - 获取ClassPath的路径和资源
  3. 在二叉树中找出和为某一值的所有路径-java实现
  4. 《深入理解Java虚拟机》:HotSpot虚拟机内的即时编译器
  5. ArcGIS JS API For JavaScript实现类台风运动路径与影响范围的显
  6. 蓝桥杯--第七届决赛:路径之谜

随机推荐

  1. android短信和彩信探秘threads
  2. android音乐播放器常见操作
  3. android 获取 imei号码以及其他信息
  4. Android(安卓)程序中哪个 Activity 最先
  5. Android使用代码
  6. Android三种方法设置ImageView的图片
  7. Android EventBus3.0 索引
  8. Android监听应用程序安装和卸载
  9. android theme中的各个color的含义
  10. android tp多点触摸