返回信息流在这里面找到了答案 http://hxraid.iteye.com/blog/747625
--------------------------------------------------------------
面试官问 arraylist中写个main方法能执行吗?
答案肯定是不能,
楼主不知道为什么,问面试官,面试官说 知道类加载机制吗?
楼主说了,双亲委派模型
然后面试官讲了,bootstrap 加载器加载了rt.jar,extension加载器加载了ext文件夹下的**……,然后arraylist 在rt.jar下……
讲了半天,我还是不懂,求懂得人解答下,谢谢
来自「北邮人论坛手机版」
这是一条镜像帖。来源:北邮人论坛 / java / #40274同步于 2015/4/28
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
关于类加载的面试题[已解决]
homeless271
2015/4/28镜像同步18 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
java virtual machine specification
【 在 hailixiansen 的大作中提到: 】
: 有没有好的将JVM的文章之类的推荐一下?
我的理解是这样:你自己写个ArrayList,里面定义了mian方法,也要放在java.util包下面。这样当你运行java.util.ArrayList的时候,由于双亲委派模型的原因,加载到的是jdk自带的ArrayList,没有mian方法,所以无法执行。如果不是放在java.util包下面,是可以运行的。
【 在 homeless271 的大作中提到: 】
: 面试官问 arraylist中写个main方法能执行吗?
: 答案肯定是不能,
: 楼主不知道为什么,问面试官,面试官说 知道类加载机制吗?
: ...................
真的不行吗?可是java.util.ArrayList是标准库提供的,不是程序员可以改的。
滚回去看了看JVM Spec。JVM如何创建初始类(initial class,就是那个有main的class)是和实现相关的。bootstrap classloader如何装载也是实现相关的。