美文网首页我爱编程
Java技术与Java虚拟机

Java技术与Java虚拟机

作者: 一W句代码 | 来源:发表于2017-02-16 02:02 被阅读0次

Java技术与Java虚拟机

说起Java,人们首先想到的是Java编程语言,然而事实上,Java是一种技术,它由四方面组成: Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口(Java API)。它们的关系如下图所示:

图1  Java四个方面的关系

运行期环境代表着Java平台,开发人员编写Java代码(.java文件),然后将之编译成字节码(.class文件)。最后字节码被装入内存,一旦字节码进入虚拟机,它就会被解释器解释执行,或者是被即时代码发生器有选择的转换成机器码执行。从上图也可以看出Java平台由Java虚拟机和Java应用程序接口搭建,Java语言则是进入这个平台的通道,用Java语言编写并编译的程序可以运行在这个平台上。这个平台的结构如下图所示:

在Java平台的结构中,可以看出,Java虚拟机(JVM)处在核心的位置,是程序与底层操作系统和硬件无关的关键。它的下方是移植接口,移植接口由两部分组成:适配器和Java操作系统,其中依赖于平台的部分称为适配器;JVM通过移植接口在具体的平台和操作系统上实现;在JVM的上方是Java的基本类库和扩展类库以及它们的API,利用Java API编写的应用程序(application)和小程序(Java applet)可以在任何Java平台上运行而无需考虑底层平台,就是因为有Java虚拟机(JVM)实现了程序与操作系统的分离,从而实现了Java的平台无关性。

那么到底什么是Java虚拟机(JVM)呢?通常我们谈论JVM时,我们的意思可能是:

1.对JVM规范的的比较抽象的说明;

2.对JVM的具体实现;

3.在程序运行期间所生成的一个JVM实例。

对JVM规范的的抽象说明是一些概念的集合,它们已经在书《The Java Virtual Machine Specification》(《Java虚拟机规范》)中被详细地描述了;对JVM的具体实现要么是软件,要么是软件和硬件的组合,它已经被许多生产厂商所实现,并存在于多种平台之上;运行Java程序的任务由JVM的运行期实例单个承担。在本文中我们所讨论的Java虚拟机(JVM)主要针对第三种情况而言。它可以被看成一个想象中的机器,在实际的计算机上通过软件模拟来实现,有自己想象中的硬件,如处理器、堆栈、寄存器等,还有自己相应的指令系统。

JVM在它的生存周期中有一个明确的任务,那就是运行Java程序,因此当Java程序启动的时候,就产生JVM的一个实例;当程序运行结束的时候,该实例也跟着消失了。

相关文章

  • 深入理解Java虚拟机读书笔记

    Java技术体系 Java虚拟机Java虚拟机组成ClassLoaderNative InterfaceExecu...

  • Java技术与Java虚拟机

    Java技术与Java虚拟机 说起Java,人们首先想到的是Java编程语言,然而事实上,Java是一种技术,它由...

  • JVM 学习记录

    一、Java 1.1 Java 技术体系包含什么? Java 技术体系包含Java 程序设计语言、Java 虚拟机...

  • 程序猿学习书籍推荐

    深入理解Java虚拟机:JVM高级特性与最佳实践 java多线程编程核心技术 Effective Java中文版 ...

  • JVM系列一(入门)

    Java虚拟机(JVM)系列一 虚拟机与Java虚拟机 JVM(Java Virtual Machine) 学习视...

  • java 简介

    一:JVM(Java Virtual Machine)Java 虚拟机,是Java技术的核心。Java的跨平台是通...

  • 1.认识Java虚拟机

    Java技术体系 sun官方定义的Java技术体系 Java程序设计语言 Java虚拟机 Class文件格式 Ja...

  • 书单

    技术书单 Java编程思想 深入理解Java虚拟机:JVM高级特性与最佳实践 HotSpot实战 Spring实战...

  • Java技术体系

    java技术体系 Sun官方定义的java技术体系包括: Java程序设计语言 各种硬件平台上的Java虚拟机 C...

  • 三分钟告诉你学完Java都能干什么?

    Java技术既是一种高级的面向对象的编程语言,也是一个平台。 Java技术基于Java虚拟机(Java virtu...

网友评论

    本文标题:Java技术与Java虚拟机

    本文链接:https://www.haomeiwen.com/subject/xzecwttx.html