何时在JVM中加载类?它们是否在服务器启动时或者有类参考时加载?我的假设是,所有的类都会像jboss这样的服务器启动,然后有一个叫做lazyloading的东西被加载。在JVM中加载类
实际上加载的含义是什么?这是否意味着在JVM内存中存在此.class以及所有方法,变量(包括实例,静态变量方法)并且可用于执行。我知道ClassLoader为需要加载的Java类定位字节码,读取字节码,检查在particualr类中使用的其他类的refrencces,并通过创建java.lang.Class类的实例来加载它们。这使得该类可用于JVM执行
方法是否也随类一起加载到JVM中?我的假设是方法只在线程的堆栈内存中。那么什么是方法记忆?它是堆栈还是堆栈的一部分?
是否只有静态方法与类加载一起加载而不是实例方法?我知道,静态的bock在类被获取时被执行,并且所有的静态变量都被初始化。
如果这些疑惑得到解决,请提前致谢。