黑马程序员技术交流社区

标题: class没load到内存之前不是字节码? [打印本页]

作者: 程金    时间: 2012-9-18 18:03
标题: class没load到内存之前不是字节码?
本帖最后由 程金 于 2012-9-20 15:42 编辑

张孝祥老师泛型的视频,高新技术34级中,里面有强调说class没load到内存之前不是字节码,类加载完了,会对class文件进行安全检查等处理,之后才是字节码,源文件编译后的class怎么会不是字节码,张老师老师说getclass()方法得到的是字节码,这跟硬盘上的class文件有什么区别?
作者: zhaosenyang    时间: 2012-9-18 22:00
我是这么理解的,硬盘上的.class文件只是物理存在的一个文件,并不能从这个文件中得到什么信息。只有将这个文件加载到内存中,此时在内存中是以二进制数据的形式存在,这个时候才能称之为字节码文件,也只有这个时候,才是成Class类的实例对象,然后通过Class类的方法得到想要的信息。不加载,他只是一个Windows文件,在内存中,才会有数据交互。
作者: 冯心程    时间: 2012-9-19 02:45
硬盘上的东西都是死的 硬盘只是个储存室 只有加载到内存中 内存才会分析它是个什么
好比你有个藏剑阁里面藏了很多稀世宝剑,但是宝剑在藏剑阁里只是一块死物 没有人拿出来用的话不会知道这个个什么东西干什么用的 只有操作宝剑的人用它 它才被识别为宝剑并知道如何使用 。。
所以可以这么说 宝剑虽然早存在在藏剑阁中 但是没人用的话你说他是烂铁都行。。
我是这么理解的
作者: 程金    时间: 2012-9-19 10:17
本帖最后由 程金 于 2012-9-19 10:31 编辑

有的说class文件就是字节码,有的说不止是字节码,晕了





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2