概述
文章目录
- 前言
- 一、java 跨平台原理
- 二、java运行过程
- 三、JDK、JRE、JVM三者之前的关系
- 总结
前言
本文主要分为两个部分:理解java跨平台原理(即:一次编写到处运行)、
java中JDK、JRE、JVM三者之间的关系.
一、java 跨平台原理
java是一门很优秀的程序设计语言,它可以实现一次编写,到处运行。
(1)其他语言不能实现跨平台的原因
a. 接口层面的不同: 例:windows、linux上都有自己的系统级别的API函数(API——应用程序接口),操作系统除了协调应用程序的执行、内存分配、系统资源管理外还要调用各种服务(每种服务都是一种函数),因此不同操作系统有所不同。
b.硬件设备的不同: 指指令集的不同(不同设备处理器不同(CPU架构),因此对应的指令集不同)
(2)java如何做到?
a. 在接口层面: java直接将系统级别的API包括在其中。例如常用System类、包装类、日期时间类、Math类、StringBuffer、StringBuilder类等。
b.在硬件设备层面: java程序经过编译生成字节码文件.class,其可理解为用自己设计的指令集来组织用户所写的程序,由于字节码文件格式都是相同的,通过 JVM(Java虚拟机) 将其翻译成对应的机器可以识别的指令,可以在不同的操作系统上编译。
图解如下:
二、java运行过程
(1)简单了解一下jvm:
jvm:java虚拟机, 是用C语言编写的一个软件。主要作用是将字节码文件指令翻译成机器可以识别的指令。
java 的运行过程如下:
对比从C语言的运行过程:
(2)Java的编译
Java 的编译通过命令javac(即javac.exe,是在JDK安装bin目录下用纯Java语言编写的可执行文件)生成字节码文件(.class)。 然后在JVM中执行Java程序。
三、JDK、JRE、JVM三者之前的关系
前面介绍了jvm (Java虚拟机),简单理解为:将字节码文件指令翻译成机器可以识别的指令。
(1)JDK: java开发工具包(Java Development Kit)
JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。
(2)JRE: Java运行环境(Java Runtime Environment)
JRE可以让计算机系统运行Java应用程序。它包括Java虚拟机(jvm)、Java核心类库和支持文件。
三者之间的关系如下图:
总结
以上就是本文的全部内容。
最后
以上就是忧伤画笔为你收集整理的为什么java一次编写到处运行?(简单理解JDK、JRE、JVM三者之间的关系)前言一、java 跨平台原理二、java运行过程三、JDK、JRE、JVM三者之前的关系总结的全部内容,希望文章能够帮你解决为什么java一次编写到处运行?(简单理解JDK、JRE、JVM三者之间的关系)前言一、java 跨平台原理二、java运行过程三、JDK、JRE、JVM三者之前的关系总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复