java基础(一):JDK、JRE、JVM、类库等概念,java跨平台实现原理

ops/2024/11/23 12:45:23/

目录

1、基本概念

2、程序运行过程

java%E8%B7%A8%E5%B9%B3%E5%8F%B0%E5%8E%9F%E7%90%86-toc" style="margin-left:0px;">3、java跨平台原理


1、基本概念

JVM:虚拟机,真正运行java程序的地方

核心类库:java自己写好的程序,给程序员自己调用的,例如System.out.println(),调用的就是

核心类库中java.io包下的println()方法。

JRE:java的运行环境,JVM + 核心类库

java开发工具:

javac:编译成.class文件

java运行.class文件

JDK:java开发工具包,java开发工具 + JRE

下面放上一张图,给大家梳理梳理

2、程序运行过程

java">public class Hello {public static void main(String[] args) {System.out.println("HelloWord!");}
}

以这个最简单的HelloWord!为例子,我们都知道机器是不认识我们代码的,它只认识0和1,想要让机器认识,就要有一本字典,帮我们把这段话翻译成机器认识的语言。

第一步:javac工具先帮我们把这段代码编译成Hello.class文件

第二步:java拿着Hello.class文件到JVM里面运行

第三步:JVM收到Hello.class文件之后,会根据代码调用核心类库,例子中就需要调用java.io包下的println()方法,然后去运行我们的Hello.class文件

java%E8%B7%A8%E5%B9%B3%E5%8F%B0%E5%8E%9F%E7%90%86">3、java跨平台原理

一处编译、处处可用

我们不需要根据不同环境写不同的代码。sun公司很贴心的为不同平台提供了JVM对应配套的虚拟机,刚刚说过,java工具会把Hello.class文件拿到JVM虚拟机去执行,所以我们只需要根据不同的操作系统安装不同的JVM虚拟机就可以运行我们的Hello.class文件了。这就是一处编译、处处可用。也是java深受市场欢迎的原因了。

这就是我对JDK概念的理解,希望能帮到大家,有问题的地方欢迎大家一起讨论!

后续会不断更新作品,欢迎大家一起讨论学习。❤❤❤


http://www.ppmy.cn/ops/136048.html

相关文章

亚马逊云服务器(AWS):功能、优势与使用指南

亚马逊云服务器(AWS)概述 亚马逊云服务器(Amazon Web Services,简称AWS)是全球领先的云计算平台,提供一系列强大且灵活的云服务,帮助企业和开发者通过云基础设施实现数据存储、计算、分析和机器…

UE5开发记录-如何解决播放完开始动画Sequence然后再显示UI?

问题记录: 如何解决播放完开始动画Sequence然后再显示UI界面? 我想要实现的是播放完Sequence的动画序列后再显示UI界面,但是遇到的问题是在关卡蓝图中会一直显示UI,播放Sequence动画的时候也在显示,要如何解决花了我…

备忘笔记-工具:JetBrains友好工具安装配置

1、配置/脚本文件下载 1、校验地址:https://3.jetbra.in/ 打开选择可用链接,点击跳转可用页面。 2、下载文件 左上角点击下载jetbra.zip文件 下载对应全家桶软件版本号,版本号在对应卡票右上角可见。 2、安装包下载 官网地址&#xff1a…

macOS 的目录结构

文章目录 根目录 (/)常见目录及其用途示例目录结构注意事项根目录 (/)主要目录及其含义其他目录总结 macOS 的目录结构无论是在 Intel 架构还是 ARM 架构的 Mac 电脑上都是相同的。macOS 的目录结构遵循 Unix 和 BSD 的传统,具有许多标准目录。以下是一些主要目录及…

2024小迪安全基础入门第四课

目录 Web应用&蜜罐系统&堡垒机运维&API内外接口&第三方拓展架构&部署影响 堡垒机的核心功能 堡垒机的优势 API的结构 Web应用&蜜罐系统&堡垒机运维&API内外接口&第三方拓展架构&部署影响 蜜罐(Honeypot)是…

VsCode 插件推荐(个人常用)

VsCode 插件推荐(个人常用)

Oracle索引质量分析

在 Oracle 数据库中,索引的质量对查询性能有着重要影响。索引质量分析主要包括以下几个方面:索引的选择性、索引的碎片化、索引的使用情况以及索引的维护。以下是一些常用的 SQL 查询和方法,帮助你分析和评估 Oracle 索引的质量。 1. 索引的…

Docker 容器的初始化设置

虽然现在Conntainerd 大有取代Docker作为容器运行时的趋势,但是docker还是有自己的优势在。尤其是对于开发者来讲,使用Docker 比使用 containerd 方便很多,尤其是在Docker Desktop等工具的加持下。 本文主要面向Docker的初、中级学者&#xf…