88问答网
所有问题
java对象静态变量放在jvm的什么区域?
如题所述
举报该问题
推荐答案 2013-10-12
对于JVM内存区的划分可参考不会,因为类的静态变量是此类的所有实例化对象全局共享的,即指向同一块内存,只要一个对象更改了静态变量,其他对象读到的都是更改后的静态变量,从设计上而言,也很容易理解,静态变量也称之为类变量,可以直接使用类名访问而不需要通过类对象访问,一楼所言有误。这要看你的业务需求,原则上是尽量减少不必要的静态变量,对于一直常量类的话,你的变量就要包含静态变量了。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://88.wendadaohang.com/zd/1aggg1Bgc.html
相似回答
java
里的
静态变量
是
放在
了堆内存还是栈内存
答:
堆区:1.存储的全部是对象
,每个对象都包含一个与之对应的class的信息。(class的目的是得到操作指令)2.jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用,只存放对象本身 栈区:1.每个线程包含一个栈区,栈中只保存基础数据类型的对象和自定义对象的引用(不是对象),对象都存放在...
java
里的
静态
成员
变量
是
放在
了堆内存还是栈内
答:
这个要看
对象
是否为逃逸对象,如果为非逃逸对象,会根据标量替换来把对象分解成若干个被这个方法使用的成员变量所代替,这些代替的成员
变量在
栈帧或寄存器上分配空间
求夹大神,
java中
将内存分为堆区,栈区,方法区。
静态
成员和方法位于方法...
答:
1. 代码区 1、栈区 3、堆区 4、
静态区域
其中栈的存取速度是最快的,所以局部变量以及一些小型的数据都 保存在栈区中,对象保存在堆区中。静态区 :保存字符常量以及成员变量。栈区中保存的变量就是保存
变量的
值。引用数据类型:栈区中保存的是
对象在
堆区的地址,所以也称作栈区的变量地址...
Java
把内存划分为4个部分 1. 代码区 1、栈区 3、堆区 4、
静态区域
答:
1、栈区(stacksegment)—由编译器自动分配释放
,存放函数的参数值,局部变量的值等,具体方法执行结束之后,系统自动释放JVM内存资源 2、堆区(heapsegment)—一般由程序员分配释放,存放由new创建的对象和数组,jvm不定时查看这个对象,如果没有引用指向这个对象就回收 3、静态区(datasegment)—存放全局...
重新理解
jvm
运行时的内存分布(堆栈方法区交互)
答:
在
java
栈中会存放
对象
实例(s1),但是他对象实例中具体的数据会由java栈中的引用指向java堆中的地址,里面的对象实例数据存放(实例名,实例相关类型,元数据信息。。。),而
静态变量
,常量,类加载后的信息等会
存放在
方法区,在运行时需要调用的时候去方法区取,所以方法区和java堆都是共享的。而java栈...
JVM
运行时数据区
答:
其次是堆(Heap),它是JVM中最大的内存
区域
,主要用于存放
对象
实例和数组。堆
在JVM
启动时被初始化,直到应用程序退出或垃圾回收机制进行清理。栈(Stack)主要用于存储局部
变量
、操作数、返回地址等信息。每当线程创建时,栈都会被初始化,线程结束时,栈中的内容会自动清除。方法区(Method Area),也称...
java
static变量
存储
在什么
地方呢,别说
什么静态
存储池的,我需要实际和...
答:
java运行时所有对象都只
在JVM
包装的内存中,JVM不是跨平台的,它由系统软件加载到内存中,很显然,
java的对象
全都在内存中。不管是
静态的
不静态的都一样,只不过JVM自己做了内存管理,将静态的数据存放的地区更加共用一点,非静态的对象只在一个地方存一个壳子(类,如果类已经加载了的,没有加载的类...
Java静态变量
可以销毁吗
答:
1.
jvm
所有的堆和方法区
对象
都是由GC机制清除的,无法通过程序GC(system.gc()只是发出一个信号,具体GC执行由虚拟机完成),所以肯定不能通过程序控制销毁对象。2.
静态变量
应该是存在方法区的,我记得看深入
JAVA
虚拟机中有说,类加载后,如果没有任何new出对象存活,并且静态变量没有被任何引用的话...
大家正在搜
java静态变量是类的对象吗
java对象调用静态变量
java静态变量存在哪里
java静态变量的特点
java类中的静态变量
java怎么定义静态变量
静态变量的引用只能使用对象吗
java的线程对象是指什么
java静态变量static
相关问题
静态变量放在jvm内存模型的哪个区域
java中,静态变量存储在哪个区啊,堆还是栈啊,或者说其他地...
java中 static变量和方法到底是存在内存什么区域
java中,静态方法被调用是,存储在内存的哪个区域?是栈?还...
java定义的变量在JVM中的位置?
java里的静态变量是放在了堆内存还是栈内存
java里的静态成员变量是放在了堆内存还是栈内
在java中,静态的对象引用,静态基本类型变量存放在哪里?