如何编译和运行您的第一个Java程序


如何编译和运行您的第一个Java程序
 

让我们从一个简单的java程序开始。

简单的Java程序
这是一个非常基本的java程序,它会打印一条消息“这是我在java中的第一个程序”。

public class FirstJavaProgram {public static void main(String[] args){System.out.println("This is my first program in java");}//End of main
}//End of FirstJavaProgram Class

输出

This is my first program in java

如何编译和运行您的第一个java程序
先决条件:您需要在系统上安装java。你可以从这里得到java。

步骤1:打开文本编辑器,如windows上的记事本或Mac上的TextEdit。复制上述程序并将其粘贴到文本编辑器中。

您也可以使用类似Eclipse的IDE来运行java程序,但我们将在后面的教程中介绍这一部分。为了简单起见,我将只在本教程中使用文本编辑器和命令提示符(或终端)。

步骤2:将文件保存为FirstJavaProgram.java。您可能想知道为什么我们将文件命名为FirstJavaProgram,问题是我们应该始终将文件命名与公共类名相同。在我们的程序中,公共类名是FirstJavaProgram,这就是为什么我们的文件名应该是FirstJava program.java。

第三步:在这个步骤中,我们将编译程序。为此,请在Windows上打开命令提示符(cmd),如果您是Mac OS,则打开终端。
要编译程序,请键入以下命令,然后按enter键。

javac FirstJavaProgram.java
当您试图编译程序时,可能会出现以下错误:“javac'未被识别为内部或外部命令、可操作程序或批处理文件”。当您的系统中未设置java路径时,会出现此错误

如果出现此错误,则首先需要在编译前设置路径。

在Windows中设置路径:
打开命令提示符(cmd),转到您在系统上安装java的地方,找到bin目录,复制完整的路径并将其写入命令中,如下所示。

set path=C:\Program Files\Java\jdk1.8.0_121\bin
注意:您的jdk版本可能不同。由于我的系统上安装了java 1.8.0_121版本,我在设置路径时也提到了这一点。

在Mac OS X中设置路径
打开终端,键入以下命令并点击回车键。

导出JAVA_HOME=/Library/JAVA/HOME
在终端上键入以下命令以确认路径。

echo$JAVA_HOME
就是这样。

以上步骤用于临时设置路径,这意味着当关闭命令提示符或终端时,路径设置将丢失,下次使用时必须重新设置路径。要永久设置路径,请参阅本指南。

步骤4:编译后,.java文件被转换为.class文件(字节码)。现在我们可以运行程序了。要运行程序,请键入以下命令,然后按enter键:

java FirstJava程序
请注意,在运行程序时,不应将.java扩展名附加到文件名中。

第一个Java程序是如何工作的?
既然我们已经了解了如何运行java程序,让我们仔细看看上面写的程序。

公共类FirstJavaProgram{
这是我们java程序的第一行。每个java应用程序都必须至少有一个类定义,该定义由类关键字和类名组成。当我说关键字时,它意味着它不应该被更改,我们应该按原样使用它。然而类名可以是任何东西。

我已经通过使用公共访问修饰符将类公开,我将在另一篇文章中介绍访问修饰符,现在您需要知道的是,一个java文件可以有任意数量的类,但它只能有一个公共类,并且文件名应该与公共类名相同。

public static void main(String[]args){
这是我们程序中的下一行,让我们将其分解以了解它:
public:这使主方法公开,这意味着我们可以从类外部调用该方法。

static:我们不需要为运行静态方法创建对象。它们可以自己运行。

void:它不返回任何内容。

main:这是方法名称。这是JVM运行程序的入口点方法。

(String[]args):用于作为字符串传递的命令行参数。我们将在另一篇文章中对此进行报道。

System.out.println(“这是我用java编写的第一个程序”);
此方法将字符串打印在控制台上的双引号内,并在其后插入一行换行符。我在关于System.out.println()的指南中已经详细介绍了这一点。

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

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

相关文章

【人机交互 复习】第7章 可视化设计

一、窗口界面类型 1.多文档界面 (1)优点 a.节省系统资源 b.最小的可视集 c.协同工作区 d.多文档同时可视化 (2)缺点 a.菜单随活动文档窗口状态变化,导致不一致性 b.文档窗口必须在主窗口内部,减弱多文档显…

台积电(TSMC)正在探索采用新型先进芯片封装技术

台积电(TSMC)正在探索采用新型先进芯片封装技术,使用类似面板的矩形基板,以应对日益增长的先进多芯片组处理器需求。据日经亚洲报道,这项开发仍处于早期阶段,可能需要数年时间才能商业化,但如果…

Minecraft服务端配置教程

一、下载服务端核心文件 下载 | FastMirror 无极镜像 | 我的世界核心下载 Downloads for Minecraft Forge for MinecraftForge服务端下载 MCVersions.net - Minecraft Versions Download List原版 注意,这个网站可以下载Forge水桶等插件和模组端,如果…

STM32HAL库--定时器篇

STM32F429 有14个定时器,其中包括 2 个基本定时器(TIM6 和 TIM7)、 10 个通用定时器(TIM2~TIM5,TIM9~TIM14)、 2 个高级控制定时器(TIM1 和 TIM8)。 由上表知道:除了 TIM…

视频服务网关的特点

一、视频服务网关的介绍 视频服务网关采用Linux操作系统,可支持国内外不同品牌、不同协议、不同设备类型监控产品的统一接入管理,同时提供标准的H5播放接口供其他应用平台快速对接,让您快速拥有视频集成能力。不受开发环境、跨系统跨平台等条…

数据分析思考

数据分析工作流程 在我的数据分析职业发展过程中,我从基础的数据提取工作开始,逐步深入到更为复杂和具有战略意义的领域。这包括构建和完善指标体系、设计风险预警模型,以及与多部门协作完成公司整体经营分析等工作。 在这个过程中&#xf…

Rust中的数据抓取:代理和scraper的协同工作

一、数据抓取的基本概念 数据抓取,又称网络爬虫或网页爬虫,是一种自动从互联网上提取信息的程序。这些信息可以是文本、图片、音频、视频等,用于数据分析、市场研究或内容聚合。 为什么选择Rust进行数据抓取? 性能:…

第22篇 Intel FPGA Monitor Program的使用<五>

Q:如何用Intel FPGA Monitor Program创建C语言工程并运行呢? A:总体过程与创建汇编语言工程类似,不同的是在指定程序类型时选择C Program。 后续用到DE2-115开发板的硬件如LED、SW和HEX等外设时,还需要将描述定义这些…

【机器学习】机器的登神长阶——AIGC

目录 什么是AIGC 普通用户接触AIGC网站推荐 通义千问 白马 普通用户如何用好AIGC 关键提示词的作用 AIGC的影响 就业市场: 教育领域: 创意产业: 经济活动: 社交媒体与信息传播: AIGC面临的挑战 什么是AIGC…

Vue68-路由简介

一、路由的应用:(单页面应用) 单页面应用:页面不刷新,但是路径会改变。 二、路由的原理: 2-1、多页面应用: 2-2、路由的相关概念 2-3、前端路由、后端路由 前端路由:你是什么路径…

transformers Model

☆ 问题描述 在 transformers 框架中,Model 模块是核心组件之一,提供了多种预训练模型及其相关功能,广泛应用于自然语言处理(NLP)任务。 ★ 解决方案 # 导入相关文件 from transformers import AutoConfig, AutoM…

【阅读论文】-- SWS:时空核密度可视化的复杂性优化解决方案

SWS: A Complexity-Optimized Solution for Spatial-Temporal Kernel Density Visualization 摘要1 引言2 预备知识2.1 STKDV 问题陈述2.2 基于范围查询的解决方案(RQS) 3 基于滑动窗口的解决方案(SWS)3.1 时间维度的滑动窗口3.2 …

【面试干货】throw 和 throws 的区别

【面试干货】throw 和 throws 的区别 1、throw1.1 示例 2、throws2.1 示例 3、总结 💖The Begin💖点点关注,收藏不迷路💖 在Java中,throw和throws都与异常处理紧密相关,但它们在使用和含义上有明显的区别。…

ElementPlus组件与图标按需自动引入

按需自动引入组件 1. 安装ElementPlus和自动导入ElementPlus组件的插件 pnpm install element-plus pnpm install -D unplugin-vue-components unplugin-auto-import 2. vite.config.ts进行修改 import { defineConfig } from vite import vue from vitejs/plugin-vue // …

T200S4高清4路SDI采集卡

产品简介: 同三维T200S4 4路高清SDI采集卡,可以同时采集4路SDI高清信号,卡上有4个SDI接口1个SDI环出转接口,配件有: 1个转SDI转接线,PCI-E2.0 X4,分辨率最高可以达到1080P/60HZ,带SDK开发包&am…

计算机网络:应用层 - 文件传输协议 FTP 电子邮件

计算机网络:应用层 - 文件传输协议 FTP & 电子邮件 文件传输协议 FTP电子邮件 文件传输协议 FTP 文件传送协议 FTP(File Transfer Protocol),曾是互联网祝频讲解上使用得最广泛的文件传送协议。 其特点是:若要存取一个文件,…

fastadmin中$searchFields解析

在控制器或者模型中添加这个属性: protected $searchFields goods_name,goods_brand,category.name,manystoreShop.name,goods_model; 查询sql拼接就会自携带;原理如下:

算法基础精选题单 模拟 (个人题解)

前言: 从今天开始刷牛客上的这份题单,为暑假的牛客多校集训做准备,题单上一共有237道题,要想在集训开始前刷完难度还是很大的,但我一定会坚持下来,希望在这段时间内我能真正入门算法竞赛。接下来这三道题都…

操作系统实战(一)(PV经典问题之生产者与消费者)

🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀操作系统 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 前言 进程互斥与同步 题目一 题目二 题…

在SQL中使用explode函数展开数组的详细指南

目录 简介示例1:简单数组展开示例2:展开嵌套数组示例3:与其他函数结合使用处理结构体数组示例:展开包含结构体的数组示例2:展开嵌套结构体数组 总结 简介 在处理SQL中的数组数据时,explode函数非常有用。它…