java堆和栈的区别 java中,静态方法被调用是,存储在内存的哪个区域?是栈?还是放大区?还是两者都有?
java中,静态方法被调用是,存储在内存的哪个区域?是栈?还是放大区?还是两者都有?
堆区域:
1。存储所有对象,每个对象都包含相应的类信息。(该类的目的是获取操作说明)
2。JVM中的所有线程只共享一个堆。堆不存储基本类型和对象引用,只存储对象本身的堆栈:1。每个线程都包含一个堆栈,它只存储基本数据类型和自定义对象的引用(而不是对象),对象存储在heap 2中。每个堆栈中的数据(原始类型和对象引用)都是私有的,其他堆栈无法访问它。
3. 堆栈分为三个部分:基本类型变量区、执行环境上下文和操作指令区。方法区:1。它也被称为静态区域。和堆一样,它也被所有线程共享。方法区域包含所有类和静态变量。2方法区域包含在整个程序中总是唯一的元素,例如类和静态变量。
jvm方法区中存放的是什么东?jvm方法区?
方法区域1。其中,每个类的结构信息、运行时常量池的字节码内容、字段、方法数据、常用方法和构造方法。(这是一个规范。不同的虚拟机有不同的实现。最典型的例子是永久空间和元空间。实例变量位于堆内存中,与方法区域无关。2它绝对不是用来放方法的。三。此区域中的所有线程都是共享的,并且存在垃圾回收。你确定要问静态方法吗?与普通方法一样,静态方法在JVM类加载阶段被加载到方法区域。当没有类加载器引用类对象时,它们将在完全GC中被销毁。
java堆和栈的区别 jvm方法区和永久代 class对象存在jvm哪个区
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。