美文网首页
java/c++内存

java/c++内存

作者: CodingGuy | 来源:发表于2016-10-13 21:00 被阅读0次
内存区域 共性 C++ Java
寄存器 位于处理器内部,最快的存储区,由编译器根据需求进行分配,无法直接控制,也不能在程序中感觉到寄存器存在的任何迹象。 C和C++允许向编译器建议寄存器的分配方式。
位于通用RAM中,由编译器自动分配释放,存放基本数据类型及对象引用等。创建程序时,系统知道存储在栈内的所有项的确切生命周期。 C++的局部对象也分配在栈中,函数结束后对象被自动销毁。 Java不允许创建局部对象,所以Java对象永远不可能存储于此
位于RAM区,供程序员分配的内存区域(new、malloc) C++中new、malloc创建的对象或分配的内存空间,使用完后必须手动释放delete、free,否则可能会出现内存泄漏 Java中new出来的对象或数组。由JVM垃圾回收器进行管理,使用后无需手动释放。
其他 静态区、文字常量区、程序代码区 方法区(也叫静态区),存放整个程序中唯一的元素,如class和static变量,能被所有线程共享。

相关文章

  • Java内存泄漏

    本文将会介绍: C++中的内存泄露 Java内存管理与垃圾回收 Java中的内存泄漏 一、C++中的内存泄露 在大...

  • 内存管理

    内容包括: C++内存管理 Java内存管理 C++内存管理 内存分配方式 在C++中,内存分成5个区,分别是栈、...

  • Android中缓存理解(一)

    Java GarbageCollection(GC) Java不能像C/C++那样直接对内存进行操作(内存分配和垃...

  • Java 内存管理

    Java可以自动管理内存,比C/C++要方便的多, 但是实际Java 也会出现内存溢出的问题。 关于Java的内存...

  • 【重要】第二章:Java内存区域与内存溢出异常

    Java VS C++ : 内存动态分配和垃圾收集技术 2.1 概述 C/C++: 自己分配,自己维护Java: ...

  • 编程语言介绍

    Java:跨平台,自动内存管理; python: ; c:; c++:Essential C++,C++Prime...

  • Java 内存空间

    1. 概述 Java 不像 C/C++ 需要程序员自己管理内存,Java 把内存控制的权利交给类 Java 虚拟机...

  • JAVA 与C++的区别

    1)Java比C++程序可靠性更高。 (2)Java语言不需要程序对内存进行分配和回收。Java丢弃了C++ 中操...

  • 19. java虚拟机总结-JVM 内存管理 (三)

    JVM 内存区域划分 1.为什么进行内存区域划分? Java自动内存管理机制是它和C++的区别所在。C++是手动内...

  • 垃圾回收

    背景 与C++对比,C++的内存回收是有C++的代码控制的,而JAVA的内存回收是由JVM的垃圾回收器控制的,看起...

网友评论

      本文标题:java/c++内存

      本文链接:https://www.haomeiwen.com/subject/wyfgyttx.html