您好、欢迎来到现金彩票网!
当前位置:老k棋牌 > 栈法 >

java 栈、方法栈的区别?

发布时间:2019-06-12 22:21 来源:未知 编辑:admin

  方法栈:当线程调用java方法时,虚拟机压入一个新的栈帧到该线程的java栈中。只要这个方法还没有返回,它就一直存在。1:这个方法栈,和那个存引用和基本数据类型的栈,是一回事吗?有...

  方法栈:当线程调用java方法时,虚拟机压入一个新的栈帧到该线程的java栈中。只要这个方法还没有返回,它就一直存在。

  1:这个方法栈,和那个存引用和基本数据类型的栈,是一回事吗?有时很么区别?

  2:虚拟机启动时,要分配哪些空间?是堆和栈、方法栈?展开我来答

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  String a=a;这样的创建形式,在栈中主要存放一些基本类型的和对象的句柄,栈有一个很重要的特殊性,就是存在栈中的数据可以共享

  String b = new String(b);堆中主要存放java对象,同时可以在堆栈中创建一个对String类的对象引用变量,也就是说:Java中所有对象的存储空间都是在堆中分配的,但是这个对象的引用却是在堆栈中分配,也 就是说在建立一个对象时从两个地方都分配内存,在堆中分配的内存实际建立这个对象,而在堆栈中分配的内存只是一个指向这个堆对象的指针(引用)而已。

  展开全部呵呵。推荐你看一本书。叫深入了解JVM 那里就介绍了你问的 栈。堆。方法区。

  栈就是主要存放 栈帧的。每执行一个方法就发生压栈动作。所以,递归的时候是会影响内存的。而你使用for 循环就不会。因为只是存在一个栈帧中。

  嗯。这个说的太多了。呵呵。你还是看看《深入了解Java虚拟机》 额。我有电子版。你要的话就说。

http://theenigmaco.com/zhanfa/78.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有