由不同ClassLoader对象加载的同名类属于不同的类型,不能相互转化和兼容。
新建一个工程NotSameClass。将如下代码,一份放入NoSameClass工程源代码目录下,一份编译成.class放入D:\temp目录下
运行如下代码,使用不同的类加载器加载同一个类(源代码都一样,不过一个来自bin目下的.class,一个来自D:\temp下的.class)
Java Code
package com.bjsxt.test; |
并且,即便是同一类 类加载器,不同的对象加载出来的类也不是同一个类。