8.HelloWorld小案例

news/2024/4/29 4:20:31/文章来源:https://blog.csdn.net/qq_39921135/article/details/137090413

文章目录

    • 一、Java程序开发运行流程
      • 如何理解编译?
    • 二、HelloWorld案例的编写
      • 1、新建文本文档文件,修改名称为HelloWorld.java。
      • 2、用记事本打开HelloWorld.java文件,输写程序内容。代码要跟我编写的完全保持一致。
      • 3、ctrl + s 保存,或者也可以直接图形化点击保存。
      • 4、编译文件。
      • 5、运行代码。

HelloWorld案例是指在计算机屏幕上输出“HelloWorld”这行文字。各种计算机语言都习惯使用该案例作为第一个演示案例。这已经是程序员圈里约定俗称的一个规矩了,"HelloWorld"就是程序员的启蒙代码。


一、Java程序开发运行流程

开发Java程序,需要三个步骤:

  1. 用记事本编写程序
  2. 编译文件
  3. 运行程序。

如何理解编译?

Java在操作系统中,是不可以直接运行的,因为操作系统它是不认识Java代码的。

image-20240327111954958

运行的办法就是需要将Java代码翻译成操作系统能看得懂的东西。所以说编译的动作其实就是翻译把操作系统看不懂的内容变成操作系统能看懂的内容。

image-20240327112105278

所以第二步的编译,我们也可以理解成翻译的意思。翻译完后会产生一个新的文件,然后在第三步就可以运行翻译之后的文件了。


二、HelloWorld案例的编写

新版本的JDK不需要先配置环境变量。直接按照以下步骤编写即可。

1、新建文本文档文件,修改名称为HelloWorld.java。

image-20240327112611211

注意

  • 后缀名为java的才是java文件。修改文件名后缀的时候会出现一个弹窗,点击yes即可。

    image-20240327112843317
  • 如果文件后缀名并没有展示,需要按如下步骤进行设置。勾选上文件扩展名,文件扩展名就是后缀名。

    image-20240327113113809

2、用记事本打开HelloWorld.java文件,输写程序内容。代码要跟我编写的完全保持一致。

右键点击文件,然后点击打开,此时就可以使用windows自带的记事本来编辑了。

image-20240327113353030

PS:双引号里写的是其他内容也行,可以是数字,也可以是字母,但不能是中文!因为会乱码,解决方案在后面Notepad++会讲解。现在先写最基本的“HelloWorld”就可以了。

这里可以养成一个习惯,只要出现括号、引号的,都要成对出现,敲完一对括号后,再将光标移到括号中间,再去补中间的代码就可以了,这样就会防止因为忘记丢掉右括号。

image-20240327113633140
public class HelloWorld {public static void main(String[] args) {System.out.println("HelloWorld");}
}

3、ctrl + s 保存,或者也可以直接图形化点击保存。

image-20240327113957364

未保存的文件在上方一般都会有 * 符号或其他符号标记。像我这里,如果保存了就会从 圆点 变为 ×

image-20240327114203429

4、编译文件。

此时就需要使用到Java当中的工具了,找到JDK的安装目录里的bin文件夹E:\develop\JDK17\bin,我们所要找的工具一个是 javac,另一个是 java,用 javac 去编译,然后再用 java 去运行。javac 是JDK提供的一个编译工具,我们可以通过这个工具,把当前路径下的java文件编译成class文件。

image-20240327132509702

这两个工具是在cmd中使用的。cmd默认操作的是 C:\User\XXX 下的文件夹,如果要进入到刚刚编写的HelloWorld所在的文件夹,就需要使用cmd命令进行切换了。

切换到编写的HelloWorld.java所在的文件夹后,执行 javac HelloWorld.java。执行完后如果没有任何信息出现,表示编译成功。编译后会多一个文件,这个文件就是翻译之后的文件,它的后缀名是class,所以我们也会把这个文件叫做class文件,或者是字节码文件。这个文件就是给操作系统在运行的时候使用的,我们人是看不懂的。

image-20240327131001440

我们可以右键点击它,然后使用记事本打开。可以发现里面的东西我们是看不懂的。

image-20240327131535808

5、运行代码。

java 是JKD提供的运行代码的工具。接下来使用 java 工具,执行 java HelloWorld,注意不需要加上后缀名。运行的是编译之后的class文件。此时发现,HelloWorld已经出来了。

image-20240327132931942

小技巧:如果不想每次编译的时候都切换路径,可以在java文件当前所在的文件夹的上方,直接输入cmd,然后回车。此时打开的cmd窗口所在的路径就是java文件所在的路径。

image-20240327134250790

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1028104.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript基础练习题之计算数组元素的和与平均值

一、如何使用JavaScript计算数组元素的和与平均值&#xff1f; 二、正确的源程序 <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>计算数组元素的和与平均值</title></head><body><h1>计算数组元…

AIGC重塑金融 | 大模型在金融行业的应用场景和落地路径

作者&#xff1a;林建明 来源&#xff1a;IT阅读排行榜 本文摘编自《AIGC重塑金融&#xff1a;AI大模型驱动的金融变革与实践》&#xff0c;机械工业出版社出版 目录 01 大模型在金融领域的 5 个典型应用场景 02 大模型在金融领域应用所面临的风险及其防范 03 AIGC 技术的科…

蓝桥杯 - 小明的背包3(多重背包)

解题思路&#xff1a; 动态规划 多重背包问题需要在01背包问题&#xff08;不重复&#xff09;的基础上多加一层循环进行遍历&#xff0c;并且dp[ j ]的式子也需要修改 import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scan …

CSS及javascript

一、CSS简介 css是一门语言&#xff0c;用于控制网页的表现。 cascading style sheet:层叠样式表 二、css的导入方式 css代码与html代码的结合方式 &#xff08;1&#xff09;css导入html有三种方式&#xff1a; 1.内联样式&#xff1a;<div style"color:red&quo…

element-ui autocomplete 组件源码分享

紧接着 input 组件的源码&#xff0c;分享带输入建议的 autocomplete 组件&#xff0c;在 element-ui 官方文档上&#xff0c;没有这个组件的 api 目录&#xff0c;它的 api 是和 input 组件的 api 在一起的&#xff0c;看完源码之后发现&#xff0c;源码当中 autocomplete 组件…

MySQL中的基本SQL语句

文章目录 MySQL中的基本SQL语句查看操作创建与删除数据库和表修改表格数据库用户管理 MySQL中的基本SQL语句 查看操作 1. 查看有哪些数据库 show databases; 2.切换数据库 use 数据库名;比如切换至 mysql数据库 use mysql;3.查看数据库中的表 show tables;4.查看表中…

新能源汽车驱动电机振动噪音分析

驱动电机示例图 驱动电机的噪声主要分为空气动力噪声、电磁噪声和机械噪声。其中在高速运转时空气动力噪声是主要噪声&#xff0c;中低速运转时电磁噪声为主要噪声。 1、空气动力噪声&#xff1a; 空气噪声主要由于风扇转动&#xff0c;使空气流动、撞击、摩擦而产生&#x…

ARM-按键中断实验

代码 #include "stm32mp1xx_gic.h" #include "stm32mp1xx_exti.h" extern void printf(const char *fmt, ...); unsigned int i 0; void do_irq(void) {//获取要处理的中断的中断号unsigned int irqnoGICC->IAR&0x3ff;switch (irqno){case 99:pr…

2023年后端面试总结

备注&#xff1a;这篇文章是我在2023年年初在自己的网站上写的&#xff0c;最近在迁移技术文章&#xff0c;我感觉这个也是和咱程序员相关&#xff0c;所以今天就决定把它迁移过来。 .......................................................................分割线..........…

AJAX-综合

文章目录 同步代码和异步代码回调函数地狱解决回调函数地狱Promise-链式调用async函数和awaitasync函数和await-捕获错误 事件循环宏任务与微任务Promise.all静态方法 同步代码和异步代码 同步代码&#xff1a;逐步执行&#xff0c;需原地等待结果后&#xff0c;才继续向下执行…

后端常问面经之计算机网络

一台机器理论上能创建多少条TCP连接&#xff1f; Linux每维护一条TCP连接都要花费内存资源的&#xff0c;每一条静止状态&#xff08;不发送数据和不接收数据&#xff09;的 TCP 连接大约需要吃 3.44K 的内存&#xff0c;那么 8 GB 物理内存的服务器&#xff0c;最大能支持的 …

微服务day07 -- 搜索引擎 ( 数据聚合 + 自动补全 + 数据同步 + ES集群 )

1.数据聚合 聚合&#xff08;aggregations&#xff09;可以让我们极其方便的实现对数据的统计、分析、运算。例如&#xff1a; 什么品牌的手机最受欢迎&#xff1f; 这些手机的平均价格、最高价格、最低价格&#xff1f; 这些手机每月的销售情况如何&#xff1f; 实现这些…

R语言基础入门

1.保存或加载工作空间 改变工作目录——进行文件读写&#xff0c;默认去指定文件进行操作。&#xff08;使用R时&#xff0c;最好先设定工作目录&#xff08;setwd(),getwd()&#xff09;&#xff09; setwd(“工作文件路径”)&#xff1a;建立工作目录 getwd&#xff08;&…

OpenGL 实现“人像背景虚化“效果

手机上的人像模式,也被人们称作“背景虚化”或 ”双摄虚化“ 模式,也称为 Bokeh 模式,能够在保持画面中指定的人或物体清晰的同时,将其他的背景模糊掉。突出画面的主体部分,主观上美感更强烈。 人像模式的一般实现原理是,利用双摄系统获取景深信息,并通过深度传感器和图…

C语言与sqlite3入门

c语言与sqlite3入门 1 sqlite3数据类型2 sqlite3指令3 sqlite3的sql语法3.1 创建表create3.2 删除表drop3.3 插入数据insert into3.4 查询select from3.5 where子句3.6 修改数据update3.7 删除数据delete3.8 排序Order By3.9 分组GROUP BY3.10 约束 4 c语言执行sqlite34.1 下载…

计算机毕业设计Hadoop+Spark+Hive租房推荐系统 贝壳租房数据分析 租房爬虫 租房可视化 租房大数据 大数据毕业设计 大数据毕设 机器学习

毕业技术方向调查表 姓名&#xff1a; 李昌福 课题方向 房无忧房屋租赁平台 开发语言&#xff1a; Java 前端框架&#xff1a; VUE 数据库&#xff1a; MySQL 服务器端 框架&#xff1a; SpringCloud 其他技术&#xff1a; Hadoop、HDFS 方向…

HTML网站的概念

目录 前言&#xff1a; 1.什么是网页&#xff1a; 2.什么是网站&#xff1a; 示例&#xff1a; 3.服务器&#xff1a; 总结&#xff1a; 前言&#xff1a; HTML也称Hyper Text Markup Language&#xff0c;意思是超文本标记语言&#xff0c;同时HTML也是前端的基础&…

二叉树初阶数据结构C

文章目录 一、树的概念及结构&#xff1f;1.树的概念2.树的相关概念3.树的表示4.树在实际生活的应用&#xff08;表示文件系统的目录树结构&#xff09; 二、二叉树的概念及结构1.概念2.特殊的二叉树3.二叉树的性质4.二叉树的存储结构 三、二叉树链式结构的实现(顺序结构之前讲…

maven 依赖机制

安全工程师为啥关注maven依赖 log 4j事件之后&#xff0c;大家开始更加关注开源组件安全漏洞这个事。纷纷引入SCA 软件成分分析工具来识别项目中存在的开源组件和漏洞。 在sca工具扫描之后&#xff0c;会报出一大堆组件&#xff0c;review这个事就是安全团队投入时间来研判了…

解锁未知领域:探索Web3技术的无限可能性

随着数字化时代的持续发展&#xff0c;Web3技术作为下一代互联网的重要组成部分&#xff0c;正呈现出无限的创新可能性。本文将深入探索Web3技术所带来的无限可能性&#xff0c;揭示其在各个领域的应用前景和潜力。 1. 区块链技术的革命性 Web3的核心是区块链技术&#xff0c;…