初学JAVA,关于JAVA虚拟机对对象数据管理,读过一些文章 ,从文中得知栈中主要存放一些基本类型的变量(,int, short, long, byte, float, double, boolean, char)和对象句柄。 栈有一个很重要的特殊性,就是存在栈中的数据可以共享。
那问题是栈这种数据结构是后进先出类型的,JVM如何进行一个数据共享?
3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
zllgugu 2011-12-01 13:34最佳回答 专家已采纳这个。。。当栈内容太多,查找是很费时间的,但由于是手动分配内存的,有固定的生命周期,比较节省空间,而且堆里面存放的是对象,不存在引用或者共享的事啦
采纳该答案 已采纳该答案 专家已采纳评论解决 无用打赏举报微信扫一扫
分享评论登录 后可回复...
查看更多回答(2条)
报告相同问题?
提交
相关推荐 更多相似问题
- 2020-06-02 18:02回答 1 已采纳 目前主流的java相关技术栈有spring 、springboot、spring cloud、dubbo、mybatis、zookeeper、elastic search、redis、kafka、je
- 2011-11-30 20:47回答 3 已采纳 这个。。。当栈内容太多,查找是很费时间的,但由于是手动分配内存的,有固定的生命周期,比较节省空间,而且堆里面存放的是对象,不存在引用或者共享的事啦
- 2014-11-24 14:13回答 3 已采纳 栈是线程私有的,意思是说每个线程都有自己的栈。 而栈可以共享数据是说,线程a在栈上的数据,线程b也是可以访问的(比如a把某个栈上变量传给了b),因为他们在一个进程内,数据访问是没有问题的。 对
- 2017-03-13 15:57JAVA个人发展技术栈
- 2017-07-05 13:58用java写的简单栈的实现,欢迎大家使用
- 2020-02-27 15:50灭霸詹的博客 1.实例化 Stack stack = new Stack(); 2.进栈 stack.push(Object);//返回的是入栈的内容 stack.add(Object);//返回的是true或false 3.出栈 stack.pop();//输出并删除栈顶元素 ...5.输出栈([ , , , …]...
- 2021-05-22 18:55回答 3 已采纳 1、堆和栈是两种数据结构,只能在一端对数据项进行插入和删除。 2、在单片机应用中,堆栈是个特殊的存储区,主要是暂时存放数据和地址。 3、堆,队列优先,先进先出。 4、栈,先进后出。 堆和栈的比
- 2018-02-20 11:49回答 3 已采纳 是的,a里面放置的元素类型是String,String类型不能用==或者!=来判断两个字符串是否相等。建议改成!a.pop().equals("(")的形式来判断栈顶的元素是否为相应的括号。 此外,
- 2017-07-27 18:28回答 2 已采纳 第一个是数组中的元素temp[i]=a[i],如果a的长度比temp小,那就只是替换前a长度的数组元素 下面a=temp是将a的地址指向temp数组所在的位置。想知道详细的搜一下java内存管理
- 2021-08-18 13:54鬼谷春秋的博客 举一个例子:比如说我们生活中洗碗,总是将第一个洗的放在最下面,然后依次叠上去,当我们要取出碗二次冲洗的时候,我们总是从最上面取,而我们第一次洗的第一个碗往往在第二次洗的最后拿到 操作 栈最主要的操作有...
- 2020-08-25 02:40主要介绍了Java定义栈结构,并实现入栈、出栈操作,结合完整实例形式分析了java数据结构中栈的定义、以及入栈、出栈、栈是否为空判断、栈大小计算、打印栈元素等相关操作技巧,需要的朋友可以参考下
- 2019-12-04 22:21单调枯燥的CC的博客 栈的基本操作 栈是一种先进后出的数据结构 常用方法: isEmpty();//栈是否为空 ...//栈中元素的个数 Stack<Integer> stack = new Stack<Integer>(); //判断空栈 if(stack.isEmp...
- 2021-06-30 14:41回答 2 已采纳 额 就一个简单入栈出站就行吧,这个是一次入栈10 20 30 40 50 输出出栈顺序 class MyStack { private int maxSize; private long
- 2016-03-31 13:02回答 2 已采纳 ``` System.out.println("元素"+stack.pop()+"出栈"); 这句话本身会让栈顶出栈 换成 System.out.println("元素"+stack
- 2017-03-18 03:22回答 1 已采纳 string str ="adc";,将先在字符串常量池中检查是否存在“abc”,若存在直接引用过来,若不存在则创建。 str是声明的一个string类型的变量,存储在栈。栈是一种线性的数据结构,后
- 2019-06-11 11:49宝宝辉AD的博客 JAVA Stack类: 栈是Vector的一个子类,它实现了一个标准的后进先出的栈,栈本身最重要的就是 push 和 pop. 堆栈只定义了默认构造函数,用来创建一个空栈。堆栈除了包括由Vector定义的所有方法,也定义了自己的一些...
- 2021-06-14 09:19花洒曾记否的博客 堆内存是java内存中的一种,它的作用是用于存储java中的对象和数组,当我们new一个对象或者创建一个数组的时候,就会在堆内存中开辟一段空间给它,用于存放。 堆内存的特点是什么? 第一点:堆其实可以类似的看做是...
- 2022-03-26 17:19飞哥的博客的博客 整理的java技术栈知识体系
- 2016-02-01 09:16回答 2 已采纳 jvm 参数修改http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html
- 2021-02-26 12:50weixin_39685024的博客 因为栈一般默认为1-2m,一旦出现死循环或者是大量的递归调用,在不断的压栈过程中,造成栈容量超过1m而导致溢出。2,解决方案:方法一:用栈把递归转换成非递归通常,一个函数在调用另一个函数之前,要作如下的事情:a)...
- 没有解决我的问题, 去提问