
Java内部原理
Mr_Chungh
这个作者很懒,什么都没留下…
展开
-
JVM详解与配置选项
Java 堆内存详解堆内存Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。在 Java 中,堆被划分成两个不同的区域:新生代 (Young )、老年代 ( Old )。新生代 ( Young) 又被划分为三个区域:Eden、From Survivor、To Survivor。这样划分的目的是为了使 JVM 能够更好的管理堆内存中的对象,包括内存的分配以及回收。...转载 2018-06-14 14:20:01 · 548 阅读 · 0 评论 -
Java中的内存泄漏
Java语言的一个关键的优势就是它的内存管理机制。你只管创建对象,Java的垃圾回收器帮你分配以及回收内存。然而,实际的情况并没有那么简单,因为内存泄漏在Java应用程序中还是时有发生的。下面就解释下什么是内存泄漏,它为什么会发生,以及我们如何阻止它的发生。1. 什么是内存泄漏? 内存泄漏的定义:对象已经没有被应用程序使用,但是垃圾回收器没办法移除它们,因为还在被引用着。 要想理解这个定义,我...原创 2018-06-14 14:25:29 · 216 阅读 · 0 评论 -
深入分析Java ClassLoader原理
深入分析Java ClassLoader原理一、什么是ClassLoader?大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程序的一个入口函数来调用系统的相关功能,而这些功能都被封装在不同的class文件当中,所以经常要从这个class文件中要调用另外一个class文件中的方法,如果...原创 2018-06-14 14:29:39 · 261 阅读 · 0 评论 -
Java的内存回收机制
Java的内存回收机制在Java中,它的内存管理包括两方面:内存分配(创建Java对象的时候)和内存回收,这两方面工作都是由JVM自动完成的,降低了Java程序员的学习难度,避免了像C/C++直接操作内存的危险。但是,也正因为内存管理完全由JVM负责,所以也使Java很多程序员不再关心内存分配,导致很多程序低效,耗内存。因此就有了Java程序员到最后应该去了解JVM,才能写出更高效,充分利用有限的...原创 2018-06-14 14:41:31 · 632 阅读 · 0 评论 -
JVM的内存区域划分
JVM的内存区域划分学过C语言的朋友都知道C编译器在划分内存区域的时候经常将管理的区域划分为数据段和代码段,数据段包括堆、栈以及静态数据区。那么在Java语言当中,内存又是如何划分的呢?由于Java程序是交由JVM执行的,所以我们在谈Java内存区域划分的时候事实上是指JVM内存区域划分。在讨论JVM内存区域划分之前,先来看一下Java程序具体执行的过程: 如上图所示,首先Java源代码文件(.j...原创 2018-06-14 15:56:37 · 336 阅读 · 0 评论