【从零开始学习JVM】
文章平均质量分 93
我是一盘牛肉
西安哔哩哔哩大学软件工程 大二学生 深夜工作者
用0和1创造我们的新世界吧!
展开
-
【从零开始学习JVM | 第九篇】了解 常见垃圾回收器
手动管理内存往往容易出现错误,例如忘记释放已经不再使用的内存或者释放尚未被使用的内存,这将导致内存泄漏或者无效的内存访问。垃圾回收器通过监测和回收不再使用的内存,帮助我们解决了这些问题,使得我们能够更专注于程序的逻辑实现,而不必过多关注内存管理细节。垃圾回收器(Garbage Collector)是现代编程语言中的一项重要技术,它提供了自动内存管理的机制,极大地简化了开发人员对内存分配和释放的繁琐工作。通过垃圾回收器,我们能够更高效地利用计算机的内存资源,减少内存泄漏和程序崩溃的风险。原创 2023-12-14 00:49:24 · 1875 阅读 · 62 评论 -
【从零开始学习JVM | 第八篇】学习垃圾回收算法 和 垃圾回收器
现代编程语言通常采用垃圾回收机制来自动管理内存。垃圾回收机制是一种自动化的内存管理技术,可以在程序运行时自动识别和回收不再使用的内存,从而减少内存泄漏和其他内存相关问题的发生。本文将介绍垃圾回收算法和垃圾回收器的相关知识,帮助读者深入了解内存管理的实现原理和技术细节。原创 2023-12-13 23:50:50 · 1551 阅读 · 22 评论 -
【从零开始学习JVM | 第七篇】深入了解 堆回收
Java堆作为内存管理中最核心的一部分,承担着对象实例的存储和管理任务。堆内存的高效使用对于保障程序的性能和稳定性至关重要。因此,深入理解Java堆回收的原理、机制和优化策略,对于Java开发人员具有重要的意义。本文旨在探讨Java堆回收的相关概念、工作原理以及常见的回收算法,帮助读者全面理解Java内存管理中的关键环节,并提供实用的建议和最佳实践,以便更好地应对内存管理方面的挑战,提升Java应用程序的性能和稳定性。原创 2023-12-13 21:06:38 · 1388 阅读 · 4 评论 -
【从零开始学习JVM | 第六篇】快速了解 直接内存
当谈及Java虚拟机(JVM)的内存管理时,我们通常会想到堆内存和栈内存。然而,还有一种被称为"直接内存"的特殊内存区域,它在Java应用程序中起着重要的作用。直接内存提供了一种与Java堆内存和本地内存进行交互的方式,同时也为我们提供了更高效的内存管理手段。在本文中,我们将深入探讨JVM直接内存的概念、工作原理和使用场景。我们将介绍直接内存与Java堆内存的对比,探讨其中的异同点。此外,我们还将探讨如何使用Java NIO库来操作直接内存,以及如何通过合理的使用直接内存来提升应用程序的性能。目录。原创 2023-12-12 19:43:31 · 2100 阅读 · 9 评论 -
【从零开始学习JVM | 第五篇】快速了解运行时数据区
当谈论 Java 程序的运行机制时,JVM(Java 虚拟机)的运行时数据区是一个必不可少的话题。JVM 运行时数据区是 Java 程序在运行过程中分配内存和管理数据的重要区域,它包括了方法区、堆、虚拟机栈、程序计数器和本地方法栈等部分。了解 JVM 运行时数据区不仅有助于理解 Java 程序的运行原理,还有助于优化程序的性能和解决一些与内存管理相关的问题。本文将从各个方面介绍 JVM 运行时数据区的结构和作用,希望能够为读者提供全面深入的了解。原创 2023-12-07 22:52:53 · 3272 阅读 · 24 评论 -
【从零开始学习JVM | 第四篇】类加载器的分类以及双亲委派机制
类加载器(ClassLoader)是JAVA虚拟机提供给应用程序去实现类和接口字节码数据的技术。类加载器只参与加载过程中字节码获取并加载到内存中这一部分。原创 2023-12-07 02:09:18 · 5397 阅读 · 73 评论 -
【从零开始学习JVM | 第三篇】类的生命周期(高频面试)
在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。在本文中,我们将深入探讨类的生命周期,从类加载到内存中的各个阶段,以及在这个过程中发生的一些关键事件和操作。我们将了解类的加载、链接和初始化过程,以及类在内存中的存储结构和引用方式。目录杂项知识点:在Java中,类的生命周期较为复杂,涉及到加载链接初始化使用和卸载几个主要阶段。原创 2023-12-05 23:15:56 · 4844 阅读 · 3 评论 -
【从零开始学习JVM | 第二篇】字节码文件的组成
字节码作为JAVA跨平台的主要原因,熟练的掌握JAVA字节码文件的组成可以帮助我们解决项目的各种问题,并且在面试中,关于字节码部分的内容却是一大考点和难点,因此我们在这里穿插讲解一下字节码文件的组成。原创 2023-12-05 21:25:41 · 4324 阅读 · 3 评论 -
【从零开始学习JVM | 第一篇】快速了解JVM
在探索现代软件开发的丰富生态系统时,我们不可避免地会遇到一个强大而神秘的存在——Java虚拟机(JVM)。作为Java语言最核心的组成之一,JVM已经超越了其最初的设计目标,成为一个多语言的运行平台,支撑着企业级应用、大数据处理、移动应用等众多领域的技术栈。JVM的独特之处在于它的架构设计,它不仅负责代码的执行,还包括了内存管理、垃圾回收、线程同步等高级功能,这些都是确保高效、稳定运行Java程序的关键因素。原创 2023-12-05 19:22:56 · 5134 阅读 · 3 评论