Java内存——基本知识
来源:互联网 发布:爱奇艺网络大电影排行 编辑:程序博客网 时间:2024/06/04 23:25
java虚拟机内存原型
寄存器:我们在程序中无法控制
栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中
堆:存放用new产生的数据
静态域:存放在对象中用static定义的静态成员
常量池:存放常量(如字符串常量)
非RAM(内存)存储:硬盘等永久存储空间
java内存分配中的栈
java虚拟机会为该线程分配一个java栈。该线程在执行某个java方法的时候,用于存储参数、局部变量、操作数、中间运算结果等。当这个方法执行完的时候,便会释放资源
在函数中定义的一些基本类型的变量数据和对象的引用变量都在函数的栈内存中分配。
当在一段代码块定义一个变量时,Java就在栈中 为这个变量分配内存空间,当该变量退出该作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。
java内存分配中的堆
java虚拟机中的堆用来存放由new创建的对象和数组。 在堆中分配的内存,由Java虚拟机的自动的垃圾回收机制来管理堆的内存。
简单的说和栈相对,堆主要是用来存放java对象的,栈主要是用来存放对象引用(数组或对象)。
数组和对象在没有引用变量指向它的时候,才变为垃圾,不能在被使用,但仍然占据内存空间不放,在随后的一个不确定的时间被垃圾回收器收走(释放掉)
常量池
常量池指的是在编译期被确定,并被保存在已编译的.class文件中的一些数据。
各种基本类型(如int、long等等)和对象型(如String及数组)的常量值(final)
在程序执行的时候,常量池 会储存在Method Area,而不是堆中。
- Java内存——基本知识
- java内存原型分析-基本知识
- java内存原型分析-基本知识
- Java内存原型分析:基本知识
- java内存原型分析-基本知识
- Java内存原型分析:基本知识
- Java内存原型分析:基本知识
- Java内存原型分析:基本知识
- java内存原型分析-基本知识
- java 反射 基本知识——构造器
- 黑马程序员——Java基本知识
- Java4Android随笔——Java基本知识
- 黑马程序员——java的基本知识
- JAVA学习笔记—review基本知识2
- JAVA学习笔记—review基本知识3
- JAVA学习笔记—review基本知识4
- 黑马程序员—JAVA基本知识学习
- 内存基本知识
- Linux-Apache服务器常规设置——用户个人主页
- JVM解读(三):JVM内存区域
- 黑马程序员-[JAVA基础]-23种设计模式之单例设计模式
- iOS开发-文件管理之多的是你不知道的事(一)
- 用户crontab不执行的解决方法
- Java内存——基本知识
- javaScript实现日历控件
- Python学习心得实例(2)
- win7 64位机器上 为Notepad++ 配置 vs 编译器
- Django中的数据记录的增、删、改、查
- Linux——虚拟目录
- 本人有一串代码没看懂,请人帮忙注释发我邮箱
- Dubbo框架应用之(四)--Dubbo基于Zookeeper实现分布式实例
- Java IO