![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
wkx_1003
这个作者很懒,什么都没留下…
展开
-
常见的GC算法(GC的背景与原理)
常见的GC算法(GC的背景与原理)GC 是英文词汇Garbage Collection的缩写,中文一般直译为 “垃圾收集”。当然也会说 “垃圾回收”。三种垃圾收集器实现(Paraller/CMD/G1)手动内存管理之前有C/C++编程经验、或者链接计算机原理的同学,会很容易理解 “内存分配” 和 “内存释放” 和两个概念。计算机程序在执行过程中,需要有地方来存放输入参数、中间变量,以及运算结果,之前的文章有提到,我们知道这些会存放到栈内存中。像C/C++的编程,需要使用完资源后,手动调用清除内原创 2020-08-14 14:03:41 · 1362 阅读 · 0 评论 -
JDK内置开发工具 + 诊断工具详解
JDK 内置命令行工具很多情况下,JVM 运行环境中并没有趁手的工具,所以掌握基本的内置工具是一项基本功。JDK 自带的工具和程序可以分为 2 大类型:开发工具诊断分析工具JDK 内置的开发工具写过 Java 程序的同学,对 JDK 中的开发工具应该比较熟悉。 下面列举常用的部分:工具简介javaJava 应用的启动程序javacJDK 内置的编译工具javap反编译 class 文件的工具javadoc根据 Java 代码和标准注释,自动生成原创 2020-08-13 13:17:24 · 655 阅读 · 0 评论 -
JVM 启动参数详解
JVM 启动参数详解JVM 作为一个通用的虚拟机,我们可以通过启动Java命令时指定不同JVM参数,让 JVM调整自己的运行状态和行为,内存管理和垃圾回收的GC算法等等。直接通过命令行启动 Java程序的格式为:java [options] classname [args]java [options] -jar filename [args]其中[options] 部分称为 “JVM 选项”,对应IDE中的 VM options,可用jps -v 查看。[args] 部分是指 “传递给ma原创 2020-08-12 12:34:54 · 4371 阅读 · 0 评论 -
Java 内存模型解析
Java 内存模型了解计算机历史的同学应该知道,计算机刚刚发明的时候,是没有内存这个概念的,速度慢到无法忍受。知道冯诺依曼提出了一个天才的设计才解决了这个问题,没错,这个设计就是加了内存,所以现代的电子计算机又叫做 “冯诺依曼机”。JVM是一个完整的计算机模型,所以自然就需要有对应的内存模型,这个模型被称为 “Java内存模型” ,对应的英文是 “Java Memory Model” ,简称JMM。Java内存模型规定了JVM应该如何使用计算机内存(RAM)。广义来讲,Java内存模型分为两个部分:原创 2020-08-11 13:12:43 · 162 阅读 · 0 评论 -
Java类加载机制深度解析
Java类加载机制深度解析我们知道Jar包打开后实际上等价于一个文件夹,里面有很多class文件和资源文件,但是为了方便就打包zip格式。当然解压了之后依然可以直接用Java命令来执行。java -jar xxx.jar运行Java程序的第一步就是加载class文件/或输入流里面包含的字节码。类的生命周期和加载过程类加载时机类加载机制自定义类加载器示例一些使用技巧如何排查找不到 Jar 包的问题?如何排查类的方法不一致的问题?怎么看到加载了哪些类,以及加载顺原创 2020-08-10 11:22:35 · 255 阅读 · 0 评论 -
Java 字节码技术解读
Java 字节码技术Java中的字节码,英文名为bytecode,是Java代码编译后的中间代码格式。JVM需要读取并解析字节码才能执行相应的任务。从技术人员的角度看Java字节码是JVM的指令集。JVM加载字节码格式的class文件,校验之后通过JIT编译器转换为本地机器代码执行。简单说字节码就是我们编写的Java应用程序大夏的每一块砖,如果没有字节码的支撑,大家编写的代码也就没有了用武之地,无法运行。也可以说,Java字节码就是JVM执行的指令格式。那么我们为什么需要掌握它呢?不管用什么编程语原创 2020-08-09 13:23:38 · 196 阅读 · 0 评论 -
JDK 与 JRE、JVM 之间的关系
JDK 与 JRE、JVM 之间的关系1. JDKJDK(JAVA Development Kit) 是用于开发Java应用程序的软件开发工具集合,包括了Java运行时的环境(JRE),解释器(Java),编译器(Javac),Java归档(jar),文档生成器(Javadoc)等工具。2. JREJRE(Java Runtime Enviroment) 提供Java应用程序执行时所需要的...原创 2020-04-07 17:35:50 · 151 阅读 · 0 评论