本帖最后由 wnmmp 于 2014-8-4 18:57 编辑
这是今天下午看《张孝祥Java高新技术》里关于类加载器方面遇到的一个问题,当把ClassLoaderTest代码中的clazz.newInstance()强制转成ClassLoaderAttachment类时,出现了错误,而强制转成Date就可以了,张老师说:“编译器去加载这个类名,编译器加载一个乱七八糟的,编译器就不干了”,据此推测他的意思是编译器用到了ClassLoaderAttachment.class(加密后的乱码),通过这个class进行强转,那为什么转成Date就可以了?Date的class从哪里来?这过程中编译器到底怎么实现强制转换的呢?由于不晓得编译器的工作原理,想了一个下午还没想通,求大神指点!
|
-
0.png
(228.87 KB, 下载次数: 56)
-
4.png
(127.35 KB, 下载次数: 56)
|