我在看到Java内存
这张图的时候:
https://blog.csdn.net/qq_5313...
有一个疑问:
比如,这里的第一个黄色框:
int i = 10
我们在写代码的时候int i = 10;
那么存在栈内存里面会把int , i , 10
都存在一块内存里面吗? 还是说只存10
呢?
我在看到Java内存
这张图的时候:
https://blog.csdn.net/qq_5313...
有一个疑问:
比如,这里的第一个黄色框:
int i = 10
我们在写代码的时候int i = 10;
那么存在栈内存里面会把int , i , 10
都存在一块内存里面吗? 还是说只存10
呢?
基本类型的值直接就保存在变量中,所以都会在同一个局部变量内存里,如果有用到i的话,就从局部变量中取出i对应10压入栈。int i=10
的指令顺序大致会如下:
其中局部变量表的大小和索引顺序等信息,在编译阶段就已经确定了
4 回答1.3k 阅读✓ 已解决
4 回答1.2k 阅读✓ 已解决
1 回答2.6k 阅读✓ 已解决
2 回答721 阅读✓ 已解决
2 回答1.7k 阅读
2 回答1.7k 阅读
2 回答1.3k 阅读
只有
10
是数据,存在(栈)内存里int
是数据的类型,仅指明这块内存的长度是 4 个字节 == 32 bitsi
是程序员写给自己看的,仅代表这块内存的地址,等于程序员自己给地址起了个别名