个人博客
(十二)垃圾回收器 (十二)垃圾回收器
(十二)垃圾回收器1. GC 分类与性能指标1.1. 垃圾回收器概述垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商、不同版本的 JVM 来实现。 由于 JDK 的版本处于高速迭代过程中,因此 Java 发展至今已经衍生了众多的 GC
2023-05-18
(十一) 垃圾回收相关概念 (十一) 垃圾回收相关概念
(十一) 垃圾回收相关概念1. System.gc()的理解在默认情况下,通过 system.gc()或者 Runtime.getRuntime().gc() 的调用,会显式触发 Full GC,同时对老年代和新生代进行回收,尝试释放被丢弃
2023-05-16
(十)垃圾回收概述及算法 (十)垃圾回收概述及算法
(十)垃圾回收概述及算法1. 垃圾回收概述1.1. 什么是垃圾? 垃圾收集,不是 Java 语言的伴生产物。早在 1960 年,第一门开始使用内存动态分配和垃圾收集技术的 Lisp 语言诞生。 关于垃圾收集有三个经典问题: 哪些内存需要回
2023-05-16
(九) StringTable (九) StringTable
(九) StringTable1. String 的基本特性 String:字符串,使用一对””引起来表示 String 声明为 final 的,不可被继承 String 实现了 Serializable 接口:表示字符串是支持序列化的。
2023-05-16
(八) 执行引擎 (八) 执行引擎
(八) 执行引擎1. 执行引擎概述执行引擎属于 JVM 的下层,里面包括解释器、及时编译器、垃圾回收器 执行引擎是 Java 虚拟机核心的组成部分之一。 “虚拟机”是一个相对于“物理机”的概念,这两种机器都有代码执行能力,其区别是物理机的
2023-05-15
(七) 对象实例化和直接内存 (七) 对象实例化和直接内存
(七) 对象实例化和直接内存1. 对象实例化面试题 美团: 对象在 JVM 中是怎么存储的? 对象头信息里面有哪些东西? 蚂蚁金服: Java 对象头有什么? 1.1. 创建对象的方式 new:最常见的方式、Xxx 的静态方法,Xxx
2023-05-14
(六)  方法区 (六) 方法区
(六) 方法区 从线程共享与否的角度来看 1. 栈、堆、方法区的交互关系 2. 方法区的理解官方文档:Chapter 2. The Structure of the Java Virtual Machine (oracle.com) 2
2023-05-14
(五) 堆 (五) 堆
(五) 堆1. 堆(Heap)的核心概述堆针对一个 JVM 进程来说是唯一的,也就是一个进程只有一个 JVM,但是进程包含多个线程,他们是共享同一堆空间的。 一个 JVM 实例只存在一个堆内存,堆也是 Java 内存管理的核心区域。 Ja
2023-05-14
(四)本地方法接口和本地方法栈 (四)本地方法接口和本地方法栈
(四)本地方法接口和本地方法栈1. 什么是本地方法?简单地讲,一个 Native Method 是一个 Java 调用非 Java 代码的接囗。一个 Native Method 是这样一个 Java 方法:该方法的实现由非 Java 语言实
2023-05-14
(三) 虚拟机栈 (三) 虚拟机栈
(三) 虚拟机栈1. 虚拟机栈概述1.1. 虚拟机栈出现的背景由于跨平台性的设计,Java 的指令都是根据栈来设计的。不同平台 CPU 架构不同,所以不能设计为基于寄存器的。 优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,实现同样
2022-09-21
1 / 2