Java虚拟机概念 Java虚拟机(JavaVirtualMachine,JVM)是一个抽象的计算机,和实际的计算机一样,通过模拟仿真来实现计算机功能。Java虚拟机不仅有自己本身的硬件架构,如处理器、堆栈、寄存器,还具有相应的指令系统。 Java的运行机制 Java的跨平台是它的主要特性之一,而Java虚拟机是实现这一特性的关键。Java程序的整个执行过程包括编译阶段与运行阶段,其中涉及
分类:
编程语言 时间:
2019-10-10 22:28:10
阅读次数:
134
前言 在Java面试中,简历上有写JVM(Java虚拟机)相关的东西,JVM的类加载机制基本是面试必问的知识点。 在Java面试中,简历上有写JVM(Java虚拟机)相关的东西,JVM的类加载机制基本是面试必问的知识点。 类的加载和卸载 JVM是虚拟机的一种,它的指令集语言是字节码,字节码构成的文件 ...
分类:
其他好文 时间:
2019-10-10 20:37:28
阅读次数:
73
引言 本文主要介绍,有关JVM(Java Visual Mechine Java虚拟机)的知识。 运行时数据区 什么是运行时数据区 通过命令行javac,对 *.java源文件 进行编译;然后在由命令 java 运行 *.java,而java源码文件进行编译成class文件,计算机将class文件打 ...
分类:
其他好文 时间:
2019-10-09 12:44:26
阅读次数:
112
JDK1.8之前,java内存分为 线程共享区:堆、方法区、直接内存(非运行时数据区的一部分)。线程私有区:程序计数器、虚拟机栈、本地方法栈。 JDK1.8开始,虚拟机取消了方法区,改为元空间。 程序计数器: 程序计数器是一块小的内存空间,存放线程执行的信息,如字节码的行号指示器还有分支、循环、跳转 ...
分类:
编程语言 时间:
2019-10-09 12:09:02
阅读次数:
93
Java是由Sun Microsystems公司于 1995年5月推出的Java面向对象程序设计语言和Java平台的总称。 Java平台由Java虚拟机(JVM)和Java 应用编程接口(Java API)构成。 Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的 ...
分类:
编程语言 时间:
2019-10-09 00:06:50
阅读次数:
88
1.1 Java虚拟机运行时数据区域 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及各自的创建和销毁的时间,有的区域随着虚拟机的启动而创建,有些区域则依赖用户线程的启动和结束从而创建和销毁,Java虚拟机的内存包括以下几个运行时数据 ...
分类:
编程语言 时间:
2019-10-08 23:57:19
阅读次数:
171
①虚拟机日志参数 -XX:+PrintGC(在jdk9.jdk10中建议使用-Xlog:gc),使用这个参数启动java虚拟机,则在GC时就会打印相应日志 -XX:+PrintGCDetails, 该参数可以打印堆的详细信息,描述各个区间的使用情况(jdk9,jdk10中使用-Xlog:gc*) - ...
分类:
其他好文 时间:
2019-10-08 21:53:23
阅读次数:
99
① Java虚拟机根据对象存活的周期不同,把堆内存划分为几块,一般分为新生代、老年代和永久代(对HotSpot虚拟机而言),这就是JVM的内存分代策略。 Java虚拟机根据对象存活的周期不同,把堆内存划分为几块,一般分为新生代、老年代和永久代(对HotSpot虚拟机而言),这就是JVM的内存分代策略 ...
分类:
其他好文 时间:
2019-10-08 21:44:26
阅读次数:
91
本资料来自于runoob,略有修改。 整个过程都是 Java 虚拟机(JVM)独立的,也就是说,在一个平台上序列化的对象可以在另一个完全不同的平台上反序列化该对象。 类 ObjectInputStream 和 ObjectOutputStream 是高层次的数据流,它们包含反序列化和序列化对象的方法 ...
分类:
编程语言 时间:
2019-10-06 16:51:46
阅读次数:
87
1.《深入理解Java虚拟机:JVM高级特性与最佳实践》本书适合所有Java程序员、系统调优师和系统架构师阅读。 共分为五大部分,围绕内存管理、执行子系统、程序编译与优化、高效并发等核心主题对JVM进行了全面而深入的分析,深刻揭示了JVM的工作原理。 电子版: 2.《Redis 深度历险:核心原理与 ...
分类:
编程语言 时间:
2019-10-05 11:02:20
阅读次数:
111