
Java进阶
文章平均质量分 92
Java进阶
超级码力Honng
这个作者很懒,什么都没留下…
展开
-
Java 进阶 08 —— JVM 垃圾回收器
文章目录垃圾回收器概述垃圾回收器的分类评估 GC 的性能指标吞吐量(throughput)暂停时间(pause time)吞吐量 vs 暂停时间不同的垃圾回收器概述垃圾收集器发展史7 款经典的垃圾回收器7 款经典的垃圾回收器与垃圾分代之间的关系垃圾收集器的组合关系如何查看默认的垃圾回收器垃圾回收器介绍Serial 回收器:串行回收参数配置ParNew 回收器:并行回收参数配置Parallel 回收器:吞吐量优先参数配置CMS 回收器:低延迟CMS 工作原理分析优点缺点参数配置小结G1 回收器:区域化分代式原创 2022-02-09 17:56:04 · 439 阅读 · 0 评论 -
Java 进阶 07 —— JVM 垃圾回收相关概念
System.gc() 的理解在默认情况下,通过 System.gc() 或者 Runtime.getRuntime().gc() 的调用,会显示触发 Full GC,同时对老年代和新生代进行回收,尝试释放被丢弃对象占用的内存。然而 System.gc() 调用附带一个免责声明,无法保证对垃圾收集器的调用。JVM 实现者可以通过 System.gc() 调用来决定 JVM 的 GC 行为。而一般情况下,垃圾回收应该是自动进行的,无须手动触发,否则就太过于麻烦了。在一些特殊情况下,如我们正在编写一个性原创 2022-02-09 17:55:09 · 339 阅读 · 0 评论 -
Java 进阶 06 —— JVM 垃圾回收算法
文章目录为什么会有 GC什么是垃圾(Garbage)为什么需要垃圾回收早期垃圾回收Java 垃圾回收机制垃圾回收相关算法垃圾标记阶段方式一:引用计数算法小结方式二:可达性分析算法GC Roots对象的 finalization 机制生存还是死亡?具体过程MAT 与 JProfiler 的 GC Roots 溯源获取 dump 文件垃圾清除阶段标记-清除算法(Mark-Sweep)背景执行过程复制算法(Copying)背景核心思想标记-压缩算法(Mark-Compact)背景执行过程小结分代收集算法增量收集算原创 2022-02-09 17:54:16 · 382 阅读 · 0 评论 -
Java 进阶 05 —— JVM 相关工具
文章目录JVM 命令行工具常用命令实例JVM 图形化工具jconsolejvisualvmVisualGCjmcJVM 命令行工具工具简介javaJava 应用的启动程序javacJDK 内置的编译工具javap反编译 class 文件的工具javadoc根据 Java 代码和标准注释,自动生成相关的API说明文档javahJNI 开发时, 根据 java 代码生成需要的 .h文件。extcheck检查某个 jar 文件和运行时扩展 jar原创 2022-02-08 15:21:07 · 192 阅读 · 0 评论 -
Java 进阶 04 —— JVM 内存模型:堆和栈是什么?
Java 进阶 04 —— JVM 内存模型:堆和栈是什么?JVM 运行时数据区概述JVM 整体架构JVM 系统线程JVM 内存结构JVM 内存整体结构JVM 栈内存机构JVM 堆内存结构CPU 与内存行为Java对象模型Java内存模型JVM 启动参数JVM 运行时数据区概述内存是非常重要的系统资源,是硬盘和 CPU 的中间仓库及桥梁,承载着操作系统和应用程序的实时运行。JVM 内存布局规定了 Java 在运行过程中内存申请、分配、管理的策略,保证了 JVM 的高效稳定运行。不同的 JVM 对于内存的原创 2021-05-17 23:25:51 · 517 阅读 · 0 评论 -
Java 进阶 03 —— 类加载器和双亲委派到底是什么?
Java 进阶 03 —— 类加载器和双亲委派到底是什么?类加载子系统作用类加载器的角色类的生命周期Loading 阶段Linking 阶段Initialization 阶段类的加载时机不会初始化(可能会加载)虚拟机自带的加载器加载器特点双亲委托负责依赖缓存加载关于 ClassLoader获取 ClassLoader 的途径显示当前 ClassLoader 加载了哪些 Jar ?用户自定义类加载器添加类的几种方式?练习类加载子系统作用类加载子系统负责从文件系统或者网络中加载 Class 文件,Clas原创 2021-05-17 23:24:25 · 259 阅读 · 0 评论 -
Java 进阶 02 —— 是时候了解一下 Java 字节码了
Java 进阶 02 —— 是时候了解一下 Java 字节码了什么是字节码?javac 与 javap字节码的运行时结构从助记符到二进制四则运行的例子算数操作与类型转换一个完整的循环控制方法调用的指令什么是字节码?我们平时所说的 Java 字节码,指的是用 Java 语言编译成的字节码。准确的说能在 JVM 平台上执行的字节码格式都是一样的。所以应该统称为 JVM 字节码。不同的编译器,可以编译出相同的字节码文件,字节码文件也可以在不同的 JVM 上运行。Java 虚拟机与 Java 语原创 2021-05-17 23:19:21 · 198 阅读 · 0 评论 -
Java 进阶 01 —— 5 分钟回顾一下 Java 基础知识
Java 进阶 01 —— 5 分钟回顾一下 Java 基础知识Java 生态圈Java 跨平台的语言Java 虚拟机规范JVM 跨语言的平台多语言混合编程两种架构举例JVM 的生命周期虚拟机的启动虚拟机的执行虚拟机的退出JVM 发展历程Sun Classic VMExact VMHotSpotBEA 的 JRockitIBM 的 J9Java 生态圈Java 是目前应用最为广泛的软件开发平台之一。随着 Java 以及 Java 社区的不断壮大,Java 也早已不再是简简单单的一门计算机语言了,它更是一原创 2021-05-17 19:17:31 · 139 阅读 · 0 评论