Class.forName和ClassLoader.loadClass的不同
来源:互联网 发布:java主要用途 编辑:程序博客网 时间:2024/05/02 01:20
两种:
(1)
Class的装载分了三个阶段,loading,linking和initializing。
Class.forName(className)装载的class已经被初始化,而ClassLoader.loadClass(className)装载的class还没有被link。
(2)
Class.forName是从指定的classloader中装载类,如果没有指定,也就是一个参数的时候,是从装载当前对象实例所在的classloader中装载类。而ClassLoader的实例调用loadclass方法,是指从当前ClassLoader实例中调用类,而这个实例与装载当前所在类实例的Classloader也许不是同一个。
使用多个classloader的情况非常常见,比如说我们的app server,那么都是这样的. 在Web与EJB间, 他们的classLoader就是不同的,这样做的目的就是为了避免两者间类装载的相互干扰。希望使用在自己的Class Loader来实现特定的操作,请使用ClassLoader方式。
- Class.forName和ClassLoader.loadClass的不同
- Class.forName和ClassLoader.loadClass的比较
- Class.forname() 和 ClassLoader.loadClass()的区别
- Class.forName() 和 ClassLoader.loadClass()的区别?
- Class.forName() 和 ClassLoader.loadClass()的区别?
- Class.forName() 和 ClassLoader.loadClass()的区别
- Class.forName() 和 ClassLoader.loadClass()的区别?
- Class.forName() 和 ClassLoader.loadClass()的区别?
- Class.forName() 和 ClassLoader.loadClass()的区别
- Class.forName() 和 ClassLoader.loadClass()的区别?
- Class.forName和ClassLoader.loadClass的区别
- Class.forName和ClassLoader.loadClass的比较
- Class.forName和ClassLoader.loadClass的区别
- Class.forName和ClassLoader.loadClass的比较
- Class.forName和ClassLoader.loadClass的比较
- Class.forName和ClassLoader.loadClass的比较
- Class.forName() 和 ClassLoader.loadClass()的区别
- Class.forName和ClassLoader.loadClass的区别
- 用actionscript做的一张分布式网络拓扑图
- Android提高第十五篇之ListView自适应实现表格
- 我的第一篇博客 8086汇编语言
- Android入门(4) 开发第一个Android程序
- ASP.NET中页面之间的通信
- Class.forName和ClassLoader.loadClass的不同
- spring MVC 参数映射JSP页面
- jos
- JDK1.7,apache ant1.8.4,activiti5.10
- C++ 调用mysql的存储过程 出现1312错误
- 03_Servlet编程
- java中的io流
- android中点击空白处隐藏软键盘
- Java学习笔记(十三)