JVM
文章平均质量分 76
苏木樨
道路很远,但脚步更长!
展开
-
JVM之类加载子系统
在Java的日常应用程序开发中,类的加载几乎是由上述3种类加载器互相配合执行的,在必要时,我们还可以自定义类加载器,来定制类的加载方式。用户自定义类加载器实现步骤:1、开发人员可以通过继承抽象类java.lang.ClassLoader类的方式,实现自己的类加载器,以满足一些特殊的需求;原创 2023-01-31 19:37:10 · 378 阅读 · 0 评论 -
什么是对象?
对象就是一种Java世界中传递数据的”载体“,它按照8字节对齐的方式,依托JVM的编译器转化为机器码与硬件交互,完成自己的计算需求,它在内存中的存在方式为对象头(Header),实例数据(Instance Data),对齐填充(Padding),对象头又分为MarkWord8个字节,Class Pointer4个字节,jvm采用8字节对齐技术,所以还行对齐填充4个字节,最后一个空对象Object o = new Object()的大小就是16字节.原创 2022-12-13 18:46:26 · 144 阅读 · 0 评论 -
JVM之垃圾收集器
垃圾收集流程图: JVM在进行GC时,并非每次都是对三个内存(新生代、老年代;方法区)区域一起回收的,大部分时候回收的都是新生代;针对HotSpot VM的实现,它里面的GC按照回收区域又分两大种类型:一种是部分收集(Partial GC),一种是整堆收集(Full GC)部分收集(Partial GC):不是完整收集整个Java堆的垃圾新生代收集(Minor GC / Young GC):只是新生代的垃圾收集老年代收集(Major GC / Old GC):只是老年代的垃圾收集目前只有CMS GC会有单独原创 2022-12-04 20:47:46 · 101 阅读 · 0 评论 -
JVM基础(一)
一个运行中的Java虚拟机有着一个清晰的任务,执行Java程序,程序开始执行时它才运行,程序结束时他就停止。执行一个所谓的Java程序的时候,真真正正在执行的是一个叫做Java虚拟机的进程。Java虚拟机的启动是通过引导类加载器(bootstrap class loader)创建一个初始类(initial class)来完成的,这个类是由虚拟机的具体实现指定的。5、在大部分情况下,基于寄存器架构的指令集往往都以一地址指令,二地址指令和三地址指令为主,而基于栈式架构的指令集却是以零地址指令为主。原创 2022-12-01 07:12:58 · 243 阅读 · 0 评论