[初始java]——java为什么这么火,java如何实现跨平台、什么是JDK/JRE/JVM
java的名言:
”一次编译、到处运行“
一、编译语言与解释语言
编译:
是将整份源代码转换成机器码再进行下面的操作,最终形成可执行文件
解释:
是将源代码逐行转换成机器码并直接执行的过程,不需要生成目标文件
java是半编译半解释型语言,由java编译器编译成字节码文件、jvm解释运行
像C、C++都是编译语言,JavaScript、PHP、python是解释型语言
所以C程序每次运行前都要重新编译源文件、JavaScript只要选中你要运行的几行代码就好了
二、认识JDK、JVM、JRE
JDK是Java开发工具包,它包含了JVM和Java的开发工具,如编译器、调试器、文档生成器等。JDK还包含了Java的标准类库,开发人员可以使用这些类库来实现各种功能。
JVM是一个虚拟机,它提供了一个独立于硬件和操作系统的运行环境,使得Java程序可以在不同的操作系统上运行(就像手机模拟器一样,安装了模拟器可以在任何电脑的操作系统下运行手机上的程序)。JVM可以解释Java字节码并将其翻译成机器语言,从而执行Java程序。JVM还提供了垃圾回收、内存管理等功能,使得Java程序开发变得更加方便和安全。
JRE是Java的运行环境,它包含了JVM和Java的运行时库。JRE不包含Java的开发工具,仅包含Java的运行时库。如果要运行Java程序,只需要安装JRE即可。
总结:只要开发java程序,就要用JDK,只运行java字节码文件,有JRE即可,所以说在你电脑上的一份java代码,编译生成字节码文件后,我只要有JRE,就可以直接运行。
三、java的跨平台性
Java的跨平台性就是由JVM实现的,无论什么操作系统,我只要有JVM,你的字节码文件的执行结果就是一样的,因为字节码文件是已经编译好的二进制文件
四、第一个java程序
例如:
打印Hello world,可以试着敲一下


javac 编译文件、生成字节码文件(.class)
java运行字节码文件,输出hello world

我删除源文件,还是可以运行字节码文件的

相关文章:
[初始java]——java为什么这么火,java如何实现跨平台、什么是JDK/JRE/JVM
java的名言: ”一次编译、到处运行“ 一、编译语言与解释语言 编译: 是将整份源代码转换成机器码再进行下面的操作,最终形成可执行文件 解释: 是将源代码逐行转换成机器码并直接执行的过程,不需要生成目标文件 jav…...
R语言手动绘制NHANSE数据基线表并聊聊NHANSE数据制作亚组交互效应表的问题(P for interaction)
美国国家健康与营养调查( NHANES, National Health and Nutrition Examination Survey)是一项基于人群的横断面调查,旨在收集有关美国家庭人口健康和营养的信息。 地址为:https://wwwn.cdc.gov/nchs/nhanes/Default.aspx 在既往的…...
C++引用(起别名)
0.引用的概念 引用不是新定义一个变量,而是给已存在变量取了一个别名,从语法的角度来说编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间。比如说你的名字和外号指的都是你本人。 void Test() {int a 10;int& ra …...
Ubuntu:VS Code IDE安装ESP-IDF【保姆级】(草稿)
物联网开发学习笔记——目录索引 Visual Studio Code(简称“VS Code”)是Microsoft向开发者们提供的一款真正的跨平台编辑器。 参考: VS Code官网:Visual Studio Code - Code Editing. Redefined 乐鑫官网:ESP-IDF …...
子序列(All in All, UVa 10340)rust解法
输入两个字符串s和t,判断是否可以从t中删除0个或多个字符(其他字符顺序不变),得到字符串s。例如,abcde可以得到bce,但无法得到dc。 解法 use std::io;fn main(){let mut buf String::new();io::stdin().…...
AI时代,当项目经理遇到ChatGPT,插上腾飞的翅膀!
文章目录 一、 ChatGPT 在项目管理中的应用1. 任务分配和跟踪2. 风险管理3. 沟通和协作 二、 ChatGPT 在项目管理中的优势1. 高效性2. 可靠性3. 灵活性 三、 ChatGPT 在项目管理中的应用场景1. 智能会议2. 智能文档3. 智能报告 结语AI时代项目经理成长之道:ChatGPT让…...
Springboot项目中加载Groovy脚本并调用其内部方代码实现
前言 项目中部署到多个煤矿的上,每一种煤矿的情况都相同,涉及到支架的算法得写好几套,于是想到用脚本实现差异变化多的算法!一开始想到用java调用js脚本去实现,因为这个不需要引入格外的包,js对我来说也没…...
为什么要做数据可视化
在当今信息爆炸的时代,数据已成为个人和企业最宝贵的资产之一。然而,仅仅拥有大量的数据并不足以支持明智的决策。数据可视化,作为一种将数据转化为图形形式的技术和方法,可以帮助我们更好地理解和分析数据,从而更准确…...
0基础学习VR全景平台篇 第108篇:全景图细节处理(下,航拍)
上课!全体起立~ 大家好,欢迎观看蛙色官方系列全景摄影课程! (调色前图库) (原图-大图) 一、导入文件 单击右下角导入按钮,选择航拍图片所在文件夹,选择图片࿰…...
linux查看文件内容命令more/less/cat/head/tail/grep
1.浏览全部内容more/less 文件: more:可以查看文件第一屏的内容,同时左下角有一个显示内容占全部文件内容的百分比,空格键会显示下一屏的内容,直到文件末尾 [rootmaster data]# more file1less:相较于mor…...
VBA窗体跟随活动单元格【简易版】
本篇博客与以往的风格不同,先上图再讲解。 这个效果是不是很酷,VBA窗体(即UserForm,下文中简称为窗体)可以实现很多功能,例如:用户输入数据,提供选项等等。如本博客标题标注&#…...
epiiAdmin框架注意事项
1,epiiAdmin文档地址: 简介/安装 EpiiAdmin中文文档 看云 2,项目性想新建模块 composer.json文件——autoload选项——psr-4下增加模块名称,然后执行composer update命令。 "autoload": {"psr-4": {"…...
数据仓库与ETL
什么是数据仓库 一种用于存储和管理数据的系统,提供一种统一方式,将不同来源、不同方式、不同时间的数据集成在一起。 数据仓库结构 主题域:一个特定领域的数据集,比如营销、销售、客户、库存等。 维度:定义数据的不…...
Centos7安装Gitlab--gitlab--ee版
1 安装必要依赖 2 配置GitLab软件源镜像 3 下载安装GitLab 4 查看管理员root用户默认密码 5 登录GitLab 6 修改密码 7 gitlab相关命令 1 安装必要依赖 sudo yum install -y curl policycoreutils-python openssh-server perl sudo systemctl enable sshd sudo systemctl sta…...
主题教育问题清单及整改措施2023年-主题教育对照六个方面个人剖析材料
无论前方路途多么坎坷,都要保持内心的坚定和勇敢。生活中没有什么不可战胜的困难,只有我们是否愿意去面对和克服。要相信自己的能力,相信自己拥有足够的智慧和力量去应对一切挑战 每一次的努力都不会白费,每一次的奋斗都是在为自己…...
php新手实战:自定义书源下载api
网上有很多第三方小说网站提供小说下载,而下载的过程无非就是搜索书籍,然后找到下载链接点击下载即可。只是类似这种“良心”的小说网站实在是太少。大多数仅支持在线阅读。而如今,我却要利用这种为数不多的“良心”小说站点提供的书源来作为…...
数据结构 - 5(二叉树7000字详解)
一:二叉树的基本概念 1.1树形结构 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。 注意&am…...
xshell使用方法(超详细)
一、安装 下载最新版安装即可,不需要做任何配置。 安装完成后输入账号名和邮箱,确认后邮箱会收到一条确认邮件,将里面的链接点开即可免费使用(仅安装后会出现,认证后以后再打开不需要重复操作,如果重新安…...
【数据库系统概论】第三章关系数据库标准语言SQL
选择题会考: 1.数据查询: SELECT:用于选择需要查询的列和行。 FROM:用于指定要查询的表。 WHERE:用于指定查询条件。 GROUP BY:用于按照指定的列对结果进行分组。 HAVING:用于指定分组条件…...
云计算是什么?学习云计算能做什么工作?
很多人经常会问云计算是什么?云计算能干什么?学习云计算能做什么工作?其实我们有很多人并不知道云计算是什么,小知今天来给大家讲讲学习云计算能做什么。 中国的云计算行业目前正处于快速发展阶段,随着互联网和数字化…...
Gemini浏览器插件深度评测:3大隐藏功能+4个高危误用陷阱,Chrome用户必须立即自查
更多请点击: https://intelliparadigm.com 第一章:Gemini浏览器插件深度评测:3大隐藏功能4个高危误用陷阱,Chrome用户必须立即自查 Gemini 浏览器插件(v2.4.1)虽以“AI网页摘要”为公开定位,但…...
第67篇:Vibe Coding时代:FastAPI + LangGraph 审批台实战,解决高风险 Agent 操作人工确认体验差的问题
第67篇:Vibe Coding时代:FastAPI + LangGraph 审批台实战,解决高风险 Agent 操作人工确认体验差的问题 一、问题场景:Agent 需要人工确认,但用户不知道该确认什么 前面我们已经做过人工确认: approval = APPROVED / REJECTED但真实平台中,审批不能只是一个字符串。 当…...
开源首发:DocCenter — 本地 HTML 工作台,治好 AI 时代的文档散落病
Tags:Python aiohttp 开源项目 AI工具 前端工程 全栈 工具分享 一、痛点:AI 时代的文档散落病 (对比传统文档管理 vs AI 生成文档的区别,说明为什么 VSCode/Notion 都不合适) 二、技术选型:为什么是单 Pyth…...
跨界阅读如何提升工程师思维:从历史轶事看芯片验证与项目管理
1. 从拿破仑的“私藏”到芯片设计的奇闻:一本跨界奇书的阅读体验作为一名在电子设计自动化(EDA)和可编程逻辑领域摸爬滚打了十多年的工程师,我的日常被Verilog代码、时序约束、PCB走线和散热仿真填满。书架上也堆满了《CMOS VLSI设…...
Python统一调用多AI模型:python-tgpt库实战指南
1. 项目概述:一个让Python与AI对话更简单的工具 如果你最近在尝试用Python调用各种大语言模型(LLM)的API,比如OpenAI的GPT、Google的Gemini,或者开源的Llama、Mistral,那你大概率经历过这样的场景…...
Deep3D:开启2D视频实时转3D的视觉革命
Deep3D:开启2D视频实时转3D的视觉革命 【免费下载链接】Deep3D Real-Time end-to-end 2D-to-3D Video Conversion, based on deep learning. 项目地址: https://gitcode.com/gh_mirrors/dee/Deep3D 你是一个文章写手,你负责为开源项目写专业易懂的…...
AntiDupl.NET终极图像去重教程:快速清理重复图片的完整指南
AntiDupl.NET终极图像去重教程:快速清理重复图片的完整指南 【免费下载链接】AntiDupl A program to search similar and defect pictures on the disk 项目地址: https://gitcode.com/gh_mirrors/an/AntiDupl 你是否曾在整理数码照片时发现同一场景拍摄了多…...
ComfyUI-WanVideoWrapper完整指南:从零开始掌握AI视频生成神器
ComfyUI-WanVideoWrapper完整指南:从零开始掌握AI视频生成神器 【免费下载链接】ComfyUI-WanVideoWrapper 项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI-WanVideoWrapper 你是否曾梦想过用AI将静态图片变成动态视频?或者让文字描述…...
【独家首发】DeepSeek-V2模型GPU利用率可视化方案:仅需3个自定义Metrics,告别盲调参数
更多请点击: https://intelliparadigm.com 第一章:DeepSeek Grafana可视化 DeepSeek 是一款高性能、低延迟的开源时序数据引擎,其原生支持 Prometheus 兼容指标暴露。将 DeepSeek 与 Grafana 集成,可实现对模型推理吞吐、GPU 显存…...
本地AI智能体框架NagaAgent:基于开源大模型的规划与工具调用实践
1. 项目概述:一个被低估的本地AI智能体框架最近在折腾本地大模型应用,特别是想搞点能自己跑起来的智能体(Agent),发现了一个挺有意思但讨论度不高的项目——RTGS2017/NagaAgent。乍一看这个标题,可能会觉得…...
