专家答疑 什么是JVM?

开发 后端
JVM是什么?它是如何工作的?对于这些问题你是否熟悉,这里和大家分享一下JVM的概念和用法,在Java中引入了Java虚拟机的概念,即在机器和编译程序之间加入了一层抽象的虚拟的机器。

可能有很多学习Java的朋友还不知道Java的运行原理、Java虚拟机是怎么工作的,本文将为你详细讲解(JVM)Java 虚拟机的概念和用法,它是在机器和编译程序之间加入了一层抽象的虚拟的机器。

Java中JVM(Java虚拟机)的详细介绍

  在Java中引入了Java虚拟机的概念,即在机器和编译程序之间加入了一层抽象的虚拟的机器。这台虚拟的机器在任何平台上都提供给编译程序一个的共同的接口。编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换为特定系统的机器码执行。在Java中,这种供虚拟机理解的代码叫做字节码(ByteCode),它不面向任何特定的处理器,只面向虚拟机。每一种平台的解释器是不同的,但是实现的虚拟机是相同的。Java源程序经过编译器编译后变成字节码,字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的机器码,然后在特定的机器上运行。

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

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

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

详细出处参考:http://www.114java.com/javajichu/201006/2312.html

【编辑推荐】

  1. JVM体系结构目的和原理
  2. 几个Java虚拟机命令行参数用法说明
  3. JVM工作原理和特点探究
  4. Java虚拟机发展回顾 为跨平台而生
  5. Java虚拟机(JVM)中的内存设置详解
责任编辑:佚名 来源: 114java.com
相关推荐

2010-06-10 16:27:17

什么是uml

2010-09-26 10:29:45

JVMJava虚拟机

2010-08-13 13:56:02

Flex事件机制

2010-07-06 11:51:21

UML活动图

2010-08-04 15:55:08

Flex是什么

2010-06-07 19:27:40

UML是什么

2010-09-28 11:32:30

HTML DOM是什么

2010-09-27 16:14:51

TomcatJVM内存

2010-08-25 10:28:05

margin

2009-07-20 10:36:29

什么是JDBC

2010-07-05 10:20:27

UML图

2017-05-27 17:00:43

重复数据删除存储云端

2013-09-02 10:08:03

虚拟化核心应用

2010-07-21 09:29:33

Perl常见问题

2010-09-17 13:15:55

JVMJava虚拟机

2021-06-03 08:32:18

JVM调优虚拟机

2010-07-02 14:04:24

UML图

2009-04-22 16:26:39

思科WLAN

2009-05-13 17:01:31

TheOpenGrou金蝶标准

2010-07-15 13:34:32

Perl随机数
点赞
收藏

51CTO技术栈公众号