Java 在什么情况下会加载新类?
也就是说,当您将任何jar文件附加到您的类路径时。就我所知,jar中的任何类都是第一次加载的 创建该类型的任何对象时。或 如果您正在访问该类的任何静态成员或方法。或 当您使用Class.forName方法加载时。Java 在什么情况下会加载新类?,java,Java,也就是说,当您将任何jar文件附加到您的类路径时。就我所知,jar中的任何类都是第一次加载的 创建该类型的任何对象时。或 如果您正在访问该类的任何静态成员或方法。或 当您使用Class.forName方法加载时。 那么第一次加载类还有其他方法吗?我认为这几乎涵盖了它,当然,类加载是可传递的 如果加载引用X的类(例如,作为返回值、作为实例化等),则必须加载X 我不确定是否允许加载程序延迟实际加载,直到真正需要引用为止 此外,无论何时调用。这可能会有帮助: 在JavaTM虚拟机规范AFAIK上,根据
那么第一次加载类还有其他方法吗?我认为这几乎涵盖了它,当然,类加载是可传递的 如果加载引用X的类(例如,作为返回值、作为实例化等),则必须加载X 我不确定是否允许加载程序延迟实际加载,直到真正需要引用为止 此外,无论何时调用。这可能会有帮助:
在JavaTM虚拟机规范AFAIK上,根据是在客户机模式还是服务器模式下启动java,行为会有所不同。