JVM(Java虚拟机)概述

开发 后端
Java虚拟机(JVM)是Java语言的基础。它是Java技术的重要组成部分。Java虚拟机(JVM)是一个抽象的计算机,和实际的计算机一样,它具有一个指令集并使用不同的存储区域。

可能有很多学习Java的朋友还不知道Java的运行原理、Java虚拟机(JVM)是怎么工作的,本文将为你详细讲解Java虚拟机(JVM)的概念,JVM是java的核心和基础,在java编译器和os平台之间的虚拟处理器。

JVM(Java虚拟机)详细讲解

  在Java中引入了Java虚拟机的概念,即在机器和编译程序之间加入了一层抽象的虚拟的机器。这台虚拟的机器在任何平台上都提供给编译程序一个的共同的接口。编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换为特定系统的机器码执行。

在Java中,这种供虚拟机理解的代码叫做字节码(ByteCode),它不面向任何特定的处理器,只面向虚拟机。每一种平台的解释器是不同的,但是实现的虚拟机是相同的。Java源程序经过编译器编译后变成字节码,字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的机器码,然后在特定的机器上运行。

  可以说,Java虚拟机(JVM)是Java语言的基础。它是Java技术的重要组成部分。Java虚拟机(JVM)是一个抽象的计算机,和实际的计算机一样,它具有一个指令集并使用不同的存储区域。它负责执行指令,还要管理数据、内存和寄存器。Java解释器负责将字节代码翻译成特定机器的机器代码。Java是一种简单的语言。它用到的概念不多,而且多为程序员所熟悉。如果你是一名程序员,掌握Java对你来说是易如反掌的事。即使你没有学过任何编程语言,学习Java也要比学习C++要容易的多。

  由于Java最初是为控制电子产品设计的,因此它必须简单明了。为了保证这种简单性,Java去掉了C++中许多复杂的、冗余的、有二义性的概念,例如操作符重载、多继承、数据类型自动转换等。为了将程序员从复杂的内存管理的负担中解脱出来,同时也是为了减少错误,Java使用了自动内存垃圾收集机制,程序员只要在需要的时候申请即可,不需要释放,而由Java自己来收集、释放内存中的无用的块。

  与C++相比,Java有着更强的面向对象特性,是一种比较纯粹的面向对象语言。一般我们使用的一些所谓的面向对象的编程语言,如C++,Object Pascal等,实际上都是一种混合型的语言,即在过程式的语言中加上面向对象的扩展。在Java中,几乎万物皆对象,就连一些基本数据类型,如整型、字符型、浮点型等,在Java中都可以作为对象处理。Java的面向对象特性几乎可以与Smalltalk媲美,但是其适用于分布式计算环境的特性却远远超过了Smalltalk。

 【编辑推荐】

  1. 深入学习JVM内存设置原理和调优
  2. JVM体系结构目的和原理
  3. JVM.dll装载过程与源代码分析
  4. 巧解使Eclipse崩溃的JVM terminated问题
  5. 解决JVM Terminated.ExitCode=-1问题行之有效的方法

 

 

责任编辑:佚名 来源: builder.com.cn
相关推荐

2020-05-08 16:55:48

Java虚拟机JVM

2011-06-22 13:35:55

JVM

2010-09-16 14:29:08

Java虚拟机

2010-09-25 15:13:40

JVMJava虚拟机

2011-11-30 14:12:05

JavaJVM虚拟机

2009-06-04 16:27:39

Java虚拟机JVMGC

2010-09-25 16:12:45

JVM虚拟机

2015-03-12 14:06:08

Java虚拟机平台原理

2010-03-15 14:24:59

StackHeapJVM

2018-10-25 09:04:56

Java虚拟机JVM

2012-05-18 10:22:23

2012-04-28 12:03:55

JavaJVMJava虚拟机

2010-09-25 15:59:54

JVM虚拟机

2023-07-27 06:59:30

Native线程数据结构

2013-07-17 09:32:58

2023-12-14 10:35:22

虚拟机程序

2011-03-17 09:58:43

Java虚拟机JVM

2010-07-26 09:02:38

2020-06-03 19:07:49

Java虚拟机JVM

2021-07-30 07:22:51

JVM虚拟机栈 Stack
点赞
收藏

51CTO技术栈公众号