黑马程序员技术交流社区

标题: 关于类加载的问题 [打印本页]

作者: 常在河边走_    时间: 2013-9-15 11:41
标题: 关于类加载的问题
我知道类加载器是负责加载所有的类的, 同一个类只能被加载一次。我想问, 怎么样才算是同一个类, 假如我修改了一个类里面的代码, 这个类已经被加载过了,那还会加载吗?
类什么时候才会被加载?  被加载的条件是什么?

作者: 冷漠无天    时间: 2013-9-15 11:54
1.类加载器的一个重要用途是在JVM中为相同名称的Java类创立隔离空间。 在JVM中, 判断两个类是否相同, 不仅是依据该类的二进制名称, 还需要依据两个类的定义类加载器。 只有两者完全一样, 才认为两个类的是相同的。 因此, 即便是异样的Java字节代码, 被两个不同的类加载器定义之后, 所失掉的Java类也是不同的。
2.类的加载过程是在程序运行期间完成的。虚拟机把描述类的数据从class文件加载到内存也就是把程序编译成class文件后进行加载。class类也就是加载条件。不知道说的对不清指正

作者: Yuan先生    时间: 2013-9-15 15:08
类加载就是把一个类的class文件读入JVM内存,修改类的源代码就相当于一个新的类,会重新编译class文件,当然会再次类加载;
类加载时机:第一次创建类对象,第一次使用类的静态成员,只是声明引用不会发生类加载




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