前言
本文主要分为两个部分:理解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虚拟机)<