首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
小马呦
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
22
文章 22
沸点 0
赞
22
返回
|
搜索文章
赞
文章( 22 )
沸点( 0 )
JVM-字符串常量池StringTable
String:字符串,使用一对""引起来表示。 String类是已经被声明为final的, 不可被继承。 String实现了Serializable接口:表示字符串是支持序列化的。实现了Comparable接口:表示String可以比较大小。 String在jdk8及以前内部定…
JVM-垃圾回收机制—垃圾回收算法
垃圾是指在运行程序中没有任何指针指向的对象,这个对象就是需要被回收的垃圾。 外文: An object is considered garbage when it can no longer be reached from any pointer in the runningp…
JVM-垃圾回收机制—垃圾回收中的概念
System.gc()无法保证GC一定执行。 在默认情况下,通过System.gc()或者Runtime.getRuntime().gc()的调用,会显式触发Full GC,同时对老年代和新生代进行回收,尝试释放被丢弃对象占用的内存。 JVM实现者可以通过system.gc()…
JVM-垃圾回收机制—垃圾回收器
垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商、不同版本的JVM来实现。 由于JDK的版本处于高速迭代过程中,因此Java发展至今已经衍生了众多的GC版本。 从不同角度分析垃圾收集器,可以将GC分为不同的类型。 串行回收指的是在同一时间段内只允许有一个CPU用于执行垃圾…
JVM-类加载子系统
加载后的Class类信息存放于一块成为方法区的内存空间。除了类信息之外,方法区还会存放运行时常量池信息,可能还包括字符串字面量和数字常量(这部分常量信息是Class文件中常量池部分的内存映射) 目的在于确保Class文件的字节流中包含信息符合当前虚拟机要求,保证被加载类的正确性…
JVM-运行时数据区的划分
内存是非常重要的系统资源,是硬盘和cpu的中间仓库及桥梁,承载着操作系统和应用程序的实时运行。JVM内存布局规定了JAVA在运行过程中内存申请、分配、管理的策略,保证了JVM的高效稳定运行。不同的jvm对于内存的划分方式和管理机制存在着部分差异(对于Hotspot主要指方法区)…
JVM-运行时数据区—程序计数器(PC寄存器)
JVM中的程序计数寄存器(Program Counter Register)中,Register的命名源于CPU的寄存器,寄存器存储指令相关的现场信息。CPU只有把数据装载到寄存器才能够运行。JVM中的PC寄存器是对物理PC寄存器的一种抽象模拟。 一个线程对应一个 JVM St…
JVM-运行时数据区—虚拟机栈
由于跨平台性的设计,java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的。 根据栈设计的优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,实现同样的功能需要更多的指令。 栈解决程序的运行问题,即程序如何执行,或者说如何处理数据。堆解决的是数…
JVM-运行时数据区—本地方法栈
本地方法栈,也是线程私有的。 允许被实现成固定或者是可动态拓展的内存大小。(和Java虚拟机栈在内存溢出方面情况是相同的) 如果线程请求分配的栈容量超过本地方法栈允许的最大容量,Java虚拟机将会抛出一个StackOverFlowError异常。 如果本地方法栈可以动态扩展,并…
JVM-运行时数据区—本地方法接口
简单来讲,一个Native Method就是一个java调用非java代码的接口,一个Native Method 是这样一个java方法:该方法的底层实现由非Java语言实现,比如C。这个特征并非java特有,很多其他的编程语言都有这一机制,比如在C++ 中,你可以用exter…
下一页
关注了
1
关注者
1
收藏集
0
关注标签
3
加入于
2020-07-24