为什么 java 的 -verbose:class 参数不包括 jre inherent native classes?
Why doesn't java's -verbose:class argument include jre inherent native classes?
当我使用 VM 参数“-verbose:class”时,它会显示正在加载的所有 classes,除了 java 固有的和已声明的那些原生地,像基元或数组(虽然想不出别的东西,是吗?)。
尽管在 main 方法中使用了以下代码行,但根据详细输出,您看不到正在加载此类型
int[] o = new int[0];
有没有办法通过其他方式实现这一点?
这些类是使用优化的代码路径预加载的,该路径绕过了几乎所有标准 class 加载机制和验证。这就是为什么你看不到它们。基本上,人们无法将这样的 class 的加载区分为一个单独的事件;它们是从预缓存图像中批量加载的。
当我使用 VM 参数“-verbose:class”时,它会显示正在加载的所有 classes,除了 java 固有的和已声明的那些原生地,像基元或数组(虽然想不出别的东西,是吗?)。
尽管在 main 方法中使用了以下代码行,但根据详细输出,您看不到正在加载此类型
int[] o = new int[0];
有没有办法通过其他方式实现这一点?
这些类是使用优化的代码路径预加载的,该路径绕过了几乎所有标准 class 加载机制和验证。这就是为什么你看不到它们。基本上,人们无法将这样的 class 的加载区分为一个单独的事件;它们是从预缓存图像中批量加载的。