手机版

java数组分配内存字节码

发布时间:2021-06-07   来源:未知    
字号:

与java数组有关的源代码如何转换为对应字节码

1.我们知道java里new 出来的都是存放在堆里的。 问题是我们如下情况:

int [] arr={1,2,3,4},

我查看了一下深入java 虚拟机测试了一下就没有new 直接int[] arr={1,2,3,4}也是存放在堆里的。

下面是深入java虚拟机里堆数组相关字节码的定义,看清楚了说明每句最后一句话将新数组的对象引用压入栈。(是对象引用)

而我编写了两个小例子生成字节码:

例子1:

[java] view plaincopy

1. public class TestArray {

2. public static void main(String[] args){

3. int [] arr1=new int[3];

4. }

5. }

生成的字节码文件如下:

[java] view plaincopy

1. public class TestArray extends ng.Object{

2. public TestArray();

3. Code:

4. 0: aload_0

5. 1: invokespecial #8; //Method java/lang/Object."<init>":()V

java数组分配内存字节码.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)