首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
JVM
订阅
木卯
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
JVM_14 Class文件结构
Java虚拟机的指令由一个字节长度的、代表着某种特定操作含义的操作码(opcode)以及跟随其后的零至移个代表此操作所需参数的操作数(operand)所构成。虚拟机中许多指令并不包含操作数,只有一个操作码。 方式一:一个一个二进制的看。这里用到的是Notepad++,需要安装一…
JVM_12 垃圾回收3-垃圾回收器
垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商、不同版本的JVM来实现。 由于JDK的版本处于高速迭代过程中,因此Java发展至今已经衍生了众多的GC版本。 从不同角度分析垃圾收集器,可以将GC分为不同的类型。 串行回收指的是在同一时间段内只允许有一个CPU用于执行垃圾…
JVM_10 垃圾回收1-概述+相关算法
➢垃圾是指在运行程序中没有任何指针指向的对象,这个对象就是需要被回收的垃圾。 longer be reached from any pointer in the runningprogram. 间会一直保留到应用程序结束,被保留的空间无法被其他对象使用。甚至可能导致内存溢出。 …
JVM_09 字符串常量池StringTable
String:字符串,使用一对""引起来表示。 String实现了Serializable接口:表示字符串是支持序列化的。 ==String在jdk8及以前内部定义了final char[],value用于存储字符串数据。jdk9时改为byte[]== 结论: String再也…
JVM_08 执行引擎(Execution Engine)
虚拟机是一个相对于“物理机”的概念,这两种机器都有代码执行能力,其区别是物理机的执行引擎是直接建立在处理器、缓存、指令集和操作系统层面上的,而虚拟机的执行引擎则是由软件自行实现的,因此可以不受物理条件制约地定制指令集与执行引擎的结构体系,能够执行那些不被硬件直接支持的指令集格式…
JVM_07 运行时数据区4-对象的实例化内存布局与访问定位+直接内存
虚拟机遇到一条new指令,首先去检查这个指令的参数能否在Metaspace的常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已经被加载、解析和初始化。( 即判断类元信息是否存在)。如果没有,那么在双亲委派模式下,使用当前类加载器以ClassLoader+包名+类…
JVM_06 运行时数据区3-方法区
1. 堆、栈、方法区的交互关系 2. 方法区的理解 《Java虚拟机规范》中明确说明:‘尽管所有的方法区在逻辑上属于堆的一部分,但一些简单的实现可能不会选择去进行垃圾收集或者进行压缩。’但对于HotSpotJVM而言,方法区还有一个别名叫做Non-heap(非堆),目的就是要和…
JVM_05 运行时数据区2-堆
一个进程对应一个jvm实例,一个运行时数据区,又包含多个线程,这些线程共享了方法区和堆,每个线程包含了程序计数器、本地方法栈和虚拟机栈。 Java堆区在JVM启动的时候即被创建,其空间大小也就确定了。是JVM管理的最大一块内存空间(堆内存的大小是可以调节的) 《Java虚拟机规…
JVM_04 本地方法接口
简单来讲,一个Native Method就是一个java滴啊用非java代码的接口,一个Native Method 是这样一个java方法:该方法的实现由非Java语言实现,比如C。这个特征并非java特有,很多其他的编程语言都有这一机制,比如在C++ 中,你可以用extern…
JVM_03 运行时数据区1-[程序计数器+虚拟机栈+本地方法栈]
内存是非常重要的系统资源,是硬盘和cpu的中间仓库及桥梁,承载着操作系统和应用程序的实时运行。JVM内存布局规定了JAVA在运行过程中内存申请、分配、管理的策略,保证了JVM的高效稳定运行。不同的jvm对于内存的划分方式和管理机制存在着部分差异(对于Hotspot主要指方法区)…