Java进阶-JVM概述(一)

本文详细介绍了Java虚拟机(JVM)的概念及其核心组成部分,包括类加载器、运行时数据区、执行引擎和本地方法接口等。同时阐述了JVM如何实现一次编译到处运行的特点,以及自动内存管理和垃圾回收等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

虚拟机

虚拟机就是一台虚拟的计算机,是一款软件,用来执行一系列虚拟计算机指令.可以分为系统虚拟机和程序虚拟机.

Java虚拟机就是一种执行Java字节码文件的虚拟计算机,它拥有独立的运行机制.

Java技术的核心就是Java虚拟机,所有的java程序都运行在java虚拟机内部.

JVM的作用

 

 

java虚拟机就是二进制字节码的运行环境,负责装载字节码到其内部,解释或编译为对应平台上的机器码指令执行,每一条java指令,java虚拟机中都有详细定义,如怎么处理操作数,处理结果放在那.

特点

一次编译到处运行.

自动内存管理

自动垃圾回收功能

当下的JVM不仅课可以执行Java字节码文件.还可以执行其他语言编译后的字节码文件,是一个跨语言平台.

JVM的位置

 

JVM是运行在操作系统之上的,它与硬件没有直接的交互.

JVM整体可以分为四个部分

 

1.类加载器

负责从硬盘上加载字节码文件.

2.运行时数据区

存储运行时数据,方法区,堆,栈,本地方法,程序技术器

3.执行引擎

负责将字节码解释\编译成真正的机器码.

4.本地方法接口

负责调用操作系统本地方法.

程序在执行之前先要把Java代码转换为字节码(Class文件),JVM首先需要把字节码通过一定的方式,类加载器(ClassLoader)把文件加载到内存中的运行时数据区(Runtime Data Area)但是字节码是JVM的一套指令集规范,底层操作系统并不可以直接执行,而是需要经过特定的命令解析器执行引擎(Execution Engine)将字节码翻译为底层系统指令在由CPU去执行.而在这一系列过程中需要调用其他语言的接口本地库接口(Native Interface)来实现整个程序的功能. 而我们通常指的JVM组成指的是运行时数据区(Runtime Data Area)程序员通常调试分析的区域就是"运行时数据区"中的Heap(堆模块).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值