0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

初学者:讲解Java程序的开发与运行原理

如意 来源:博学谷 作者:照照 2020-08-13 15:01 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

可能刚刚接触编程的初学者会发现,编写一个Java程序其实很简单,但是Java程序的运行过程却是非常复杂的。关于Java程序工作原理这部分知识,虽然不要求编程学习者完全掌握,你但是至少需要了解它的大致过程。下面小编将好好介绍一下Java程序的开发与运行原理,大致分为以下三步:编写源文件、编译以及运行。

初学者:讲解Java程序的开发与运行原理

1、编写源文件

编写的代码,称为“源代码”或“源码”。一般情况下,我们会把源代码保存到后缀名为.java的文本文件里,这样的文件叫源文件。 为了方便,我们会保持文件名与类的名字一致(包括大小写)。

2、编译

源文件是程序员编写的,我们能够轻松识别每一行代码的意思,但是,在计算机中,CPU只能识别二进制指令。所以,现在要做的工作就是,需要在源文件和计算机指令之间进行转换。由于Java语言的结构和特性,设计者们先将源文件转换成一种特殊的二进制文件,然后将这个二进制文件交给Java运行时环境(JRE)去执行。转换成二进制文件的过程,叫做编译(这个过程使用了 javac 命令),生成的二进制文件,叫做字节码文件(后缀名是 .class )。如Test.java经过编译就会生成Test.class。这个过程全部由Java编译器自动完成,不需要程序员进行任何特殊操作。

3、运行

Java程序的开与运行原理,并不是将字节码文件(.class文件)简单的交给操作系统去执行,那是因为不同的操作系统中数据的大小、范围和计算方式有很大不同,会导致同一段代码在不同系统之间运行效果差别很大,这不是设计者们想要看到的。

初学者:讲解Java程序的开发与运行原理

Java的设计者们想到了一个聪明的办法,就是针对不同的操作系统,分别编写了一个可以正确执行Java程序的虚拟机(JVM),然后把这个虚拟机内置到 Java 的运行时环境(JRE)中,这样,同一段Java代码,就可以在不同的操作系统上运行出相同的效果了。将字节码文件(.class)交给Java运行时环境(JRE)执行的过程,叫做Java程序的运行(这个过程使用了 java 命令)。

总的来说,Java程序的开发与运行原理就是把源文件编译成字节码文件,然后运行,在终端显示结果。因此,从编写源代码,到程序输出结果,这个过程看似简单,其实需要大家学习和掌握的内容还有很多~

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    20

    文章

    3023

    浏览量

    117203
  • 程序
    +关注

    关注

    117

    文章

    3850

    浏览量

    85771
  • 源代码
    +关注

    关注

    96

    文章

    2954

    浏览量

    70996
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    面向测量初学者的入门专栏:为什么要测量声音和振动?

    面向测量初学者的入门专栏:为什么要测量声音和振动?您有没有想过,其实我们每天都生活在各种“声音”和“振动”之中?这些复杂交织的声音和振动,如果按照频率(也就是声音的高低)进行分解,并分析其大小、甚至
    的头像 发表于 04-17 09:51 565次阅读
    面向测量<b class='flag-5'>初学者</b>的入门专栏:为什么要测量声音和振动?

    关于TNC同轴线缆结构:这是一篇被很多射频初学者忽视的干货文

    很多射频初学者常将TNC接口视作BNC的“螺纹加强版”,却忽略了其内部严丝合缝的物理结构对信号传输的决定性影响。本文深度拆解TNC同轴线缆的四大核心层:从利用集肤效应的中心导体,到决定特征阻抗
    的头像 发表于 04-16 16:19 192次阅读
    关于TNC同轴线缆结构:这是一篇被很多射频<b class='flag-5'>初学者</b>忽视的干货文

    国产DSP/FPGA选型、环境搭建与初学者调研全指南

    作为全国产解决方案的标杆,其核心选型(长城银河FT-M6678N DSP、复旦微JFM7VX690T36 FPGA)、开发环境搭建,以及适配初学者的调研路径,都值得细细拆解。更关键的是,芯片与板卡在实际使用中的各类问题、易忽略的技术细节,直接决定实操成功率,也是发烧友
    的头像 发表于 03-10 18:52 1149次阅读
    国产DSP/FPGA选型、环境搭建与<b class='flag-5'>初学者</b>调研全指南

    Candera CGI Studio工具助力HMI开发高效落地

    开发复杂的人机界面(HMI)不仅需要合适的工具,也需要恰当的支持。无论您是经验丰富的开发者还是初学者,获得专业指导与个性化协助,对 HMI 项目的成功至关重要。CGI Studio 提供一款高度先进的专业级 HMI 工具。其真正
    的头像 发表于 03-02 15:08 681次阅读

    AI端侧部署案例(SC171开发套件V2-FAS)

    AI端侧部署案例(SC171开发套件V2-FAS) 序列 课程名称 视频课程时长 视频课程链接 课件链接 工程源码 1 初学者入门手写数字识别案例 32分21秒 https
    发表于 02-11 12:08

    AI端侧部署案例(SC171开发套件V3)2026版

    AI端侧部署案例(SC171开发套件V3)2026版 序列 课程名称 视频课程时长 视频课程链接 课件链接 工程源码 1 初学者入门手写数字识别案例 25分29秒 https
    发表于 01-15 10:40

    linux-arm开发环境的简单配置

    linux-arm开发环境简单配置 关于linux-arm开发环境简单配置是ARM学习的第一步,很多初学者会在这问题上纠结很久都不能配置好开发环境。推荐大家看一下韦东山视频,讲得很详
    发表于 01-13 07:56

    FPGA初学者求助

    Vivado2025.1配置MIG时出现报错 大家好,我是一名研一的学生,同时也是一名FPGA初学者,最近在使用vivado2025.1配置MIG的时候遇到了问题,具体问题如下: 我这个mig的配置
    发表于 12-07 11:43

    Arm Neoverse CPU上大代码量Java应用的性能测试

    Java 是互联网领域广泛使用的编程语言。Java 应用的一些特性使其性能表现与提前编译的原生应用(例如 C 程序)大相径庭。由于 Java 字节码无法直接在 CPU 上执行,因此通常
    的头像 发表于 11-05 11:25 1060次阅读
    Arm Neoverse CPU上大代码量<b class='flag-5'>Java</b>应用的性能测试

    C语言入门(硬件嵌入式那种不是APP开发的)

    C语言入门(硬件嵌入式那种不是APP开发的),有没有对初学者很友好的书籍、视频等资料推荐一下,一直以来看了正dian原子、野火等的视频、文档结果从快要入门到放气,然后再从放气到快要入门,一直没有进展,还望指点迷津,感谢
    发表于 09-27 12:03

    LuatOS脚本开发入门:嵌入式运行框架全解析!

    想搞懂LuatOS如何运行Lua脚本?本文深入剖析其嵌入式运行框架,涵盖虚拟机加载、任务协程、系统初始化等关键环节,适合初学者。 一、LuatOS 编程起步 1.1 底层固件怎么启动 LuatOS
    的头像 发表于 09-26 17:45 766次阅读
    LuatOS脚本<b class='flag-5'>开发</b>入门:嵌入式<b class='flag-5'>运行</b>框架全解析!

    初学者指南:树莓派上搭建虚拟环境!

    在这篇简明扼要的指南中,我们将探讨如何在树莓派上设置和使用虚拟环境(或称为Venv)——包括在终端和Thonny集成开发环境中。使用Bookworm操作系统或更高版本时,或在尝试安装Python
    的头像 发表于 07-27 13:24 1293次阅读
    <b class='flag-5'>初学者</b>指南:树莓派上搭建虚拟环境!

    入门到精通:电商API的全栈开发指南

    电商API的设计、实现与优化。无论你是初学者还是经验开发者,都能通过实践提升技能。文章结构清晰,分为入门、进阶和精通三个阶段,每个阶段包含代码示例和关键概念讲解,确保内容真实可靠。 1. 入门阶段:理解电商API基础 电商
    的头像 发表于 07-23 15:55 1654次阅读
    入门到精通:电商API的全栈<b class='flag-5'>开发</b>指南

    避雷!树莓派初学者常犯的5个错误!

    如果你刚刚入手树莓派,你就会知道它潜力无穷,几乎能实现你想到的任何功能。然而,这种自由也让你可能在不知不觉中做出对系统有害的操作。在本文中,我将介绍要避免犯哪些错误。初学者最常犯的错误包括:损坏SD
    的头像 发表于 07-22 17:16 1714次阅读
    避雷!树莓派<b class='flag-5'>初学者</b>常犯的5个错误!

    EtherCAT运动控制卡应用开发教程之Java

    运动控制卡的Java开发及DLL调用
    的头像 发表于 06-13 14:29 1109次阅读
    EtherCAT运动控制卡应用<b class='flag-5'>开发</b>教程之<b class='flag-5'>Java</b>