当前位置: 首页 > news >正文

如何正确的写出第一个java程序:hello java

1 前言

最近公司由于项目需要,开始撸java代码了。学习一门新的编程语言,刚开始总是要踩很多坑,所以记录一下学习过程,也希望对java初学者有所帮助。

2 hello java

2.1 程序源码

程序内容十分简单,这里就不再过多赘述,直接贴上代码:

public class HelloJava {public static void main(String[] args) {System.out.println("hello java");}
}

2.2 运行程序

即使是对于一个编程的初学者,这个代码,也几乎不能再简单了,但是即使是这么简答的代码,我竟然运行了好几次才成功。。。。

前提是你的环境是已经安装好了jdk工具(具体安装方法这里就不介绍了)

步骤1:通过javac命令生成java字节码:

javac helljava.java

执行上面的命令时提示如下的错误:
错误1:

hellojava.java:1: 错误: 类 HelloJava 是公共的, 应在名为 HelloJava.java 的文件中声明
在这里插入图片描述

原因:
在java程序中,类名(class后的名称)必须要和文件名一致。比如这里的类名为HelloJava,那么这个文件必须保存为HelloJava.java。(其中.java是所有java文件的后缀)。我原来的文件名是javahello.java,所以执行上面的命令就会报错。

步骤2:运行程序
如果步骤1执行成功,就会生成一个同名的后缀为.class的文件。
比如如果源文件名为HelloJava.java,那么会生成一个HelloJava.class的文件。

可以通过下面的命令运行:
注意HelloJava不能带后缀.class, 否则就会出现类似错误2的提示

java HelloJava  

错误2:

错误: 找不到或无法加载主类 HelloJava.class
原因: java.lang.ClassNotFoundException: HelloJava.class

在这里插入图片描述
我查询了一下,原因简单来说就是:
根据java的规定,
如果命令为:java xxx.yyy 就代表要运行package xxx中类名(class)为yyy中的main函数。
如果写成:
java HelloJava.class 就代表要去执行package 为HelloJava中class名为class中的main函数,这里显然不是。

相关文章:

如何正确的写出第一个java程序:hello java

1 前言 最近公司由于项目需要,开始撸java代码了。学习一门新的编程语言,刚开始总是要踩很多坑,所以记录一下学习过程,也希望对java初学者有所帮助。 2 hello java 2.1 程序源码 程序内容十分简单,这里就不再过多赘…...

使用llvm 编译最新的linux 内核(LoongArch)

1. 准备交叉工具链 llvm 使用了最新的llvm-17, 编译方法见:编译LoongArch的llvm交叉工具链 gcc 从linux 官方下载:http://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/13.2.0/x86_64-gcc-13.2.0-nolibc-loongarch64-linux.tar.xz 发布llvm和g…...

Using Multiple RDF Knowledge Graphs for Enriching ChatGPT Responses

本文是LLM系列文章,针对《Using Multiple RDF Knowledge Graphs for Enriching ChatGPT Responses》的翻译。 使用多个RDF知识图来丰富ChatGPT响应 摘要1 引言2 相关工作3 GPT-LODS的过程和用例4 结束语 摘要 最近有一种趋势是使用新型人工智能聊天GPT聊天箱&…...

【Hive-小文件合并】Hive外部分区表利用Insert overwrite的暴力方式进行小文件合并

这里我们直接用实例来讲解,Hive外部分区表有单分区多分区的不同情况,这里我们针对不同情况进行不同的方式处理。 利用overwrite合并单独日期的小文件 1、单分区 # 开启此表达式:(sample_date)?. set hive.support.quoted.identifiersnon…...

位运算 |(按位或) (按位与) ^(按位异或)

目录 文章目录:本章讲解的主要是刷题系列 1:首先会介绍 I & ^这三个操作符的作用,性质 2:三道使用位运算操作符的经典 笔试题(来自剑指offer) 题目链接如下: 1:136. 只出现一次的数字 - 力扣(LeetCode…...

Qt应用开发(基础篇)——复选按钮 QCheckBox 单选按钮 QRadioButton

一、前言 QCheckBox类与QRadioButton类继承于QAbstractButton,QCheckBox是一个带有文本标签的复选框,QRadioButton是一个带有文本标签的单选按钮。 按钮基类 QAbstractButton QCheckBox QCheckBox复选框是一个很常用的控件,拥有开关(选中和未…...

AERMOD模型大气环境影响评价

随着我国经济快速发展,我国面临着日益严重的大气污染问题。近年来,严重的大气污染问题已经明显影响国计民生,引起政府、学界和人们越来越多的关注。大气污染是工农业生产、生活、交通、城市化等方面人为活动的综合结果,同时气象因…...

递归组装树结构的数据

开发中,经常遇到存在树形结构的数据,如行政区划这类数据,一级一级分层,后端需要组装好树形结构数据返回给前端。 由于返给前端的json数据中,如果是叶子节点了,说明它没有子节点,那么就没必要返…...

企业架构LNMP学习笔记7

PHP介绍: HTML:超文本标记语言 http: 超文本传输协议 端口80 浏览器将html代码解析成web页面。 PHP:超文本预处理器。后端语言开发,页面上需要动态改变修改的,需要连接数据库查询数据,转为html。 主要…...

开店星小程序上架教程和后台Request failed with status code 500[undefined]问题处理

开店星小程序上架教程和后台Request failed with status code 500[undefined]问题处理 刚刚安装好开店星网站后台之后都会出现这个code 500[undefined]的错误,需要改一下代码。改好了之后就可以正常使用了。如果大家不懂得这样处理的可以私聊我,帮忙处理…...

第一百三十六回 WillPopScope组件

文章目录 概念介绍使用方法示例代码 我们在上一章回中介绍了下拉刷新组件相关的内容,本章回中将介绍 WillPopScope组件.闲话休提,让我们一起Talk Flutter吧。 概念介绍 我们在本章回中介绍的WillPopScope组件是一种事件拦截类组件,它没有具…...

【论文爬虫】自动将论文详细信息直送notion并自动下载(含源码)

输入论文标题,本爬虫将自动在semanticscholar.com和arxiv.com搜索该文章,自动获取其日期、作者、url、摘要等信息,并自动发送到你提前设置好的notion数据库里,同时自动从arxiv下载论文,然后将论文的保存地址在notion页…...

Android知识点整理

关键点 Activity Fragment 调试应用 处理应用程序配置 Intent 和 Intent 过滤器 会使用Context 后台处理指南 Android 的数据隐私 Android 网络数据安全教程 Android 中的依赖项注入 内容提供程序 Android 内存管理概览 一些重要的库 1.Glide 是一个 Android 上的…...

JSON与电子表格

一、介绍 电子表格是一种常见的电子数据处理工具,而JSON是一种数据交换格式。电子表格和JSON之间可以进行数据的导入和导出,以实现数据的相互转换和交互。 在电子表格中,数据以行和列的形式组织,并可以包含不同的数据类型。每个…...

Oracle创建用户、授权视图权限

1、创建用户密码 create user 用户名 identified by 密码;2、创建视图 CREATE VIEW 用户1.表名1 AS SELECT * FROM 用户2.表名2 t;3、授权 GRANT SELECT ON 用户2.表名2 TO 用户1 with GRANT OPTION ;grant connect to 用户名; grant select on 用户1.表名1 t…...

MT4移动端应用指南:随时随地进行交易

如今,随着科技的不断发展,我们可以随时随地通过手机进行各种操作,包括进行金融交易。本文将为大家介绍一款优秀的金融交易软件——MT4(可在mtw.so/6gwPno这点下)移动端应用,并提供详细的使用指南&#xff0…...

【数据挖掘】学习笔记

文章目录 < 数据预处理 > 聚集&#xff1a;多个样本或特征进行合并&#xff08;减少样本规模、转换标度、更稳定&#xff09;抽样&#xff1a;抽取一部分样本降维&#xff1a;在地位空间中表示样本&#xff08;PCA、SVD&#xff09;特征选择&#xff1a;选取重要特征&am…...

MyBatis-Plus排除不必要的字段

查询学生信息排除年龄列表 &#x1f4da;&#x1f50d; 使用MyBatis-Plus排除某些字段。如果你想要进行查询&#xff0c;但又不需要包含某些字段&#xff0c;那么这个功能将非常适合你。&#x1f50d;&#x1f393;&#x1f4dd; 1. 学生信息查询-排除年龄列表 在使用 MyBat…...

webpack打包

文章目录 一、什么是webpack二、使用步骤1.创建一个新的文件夹,并将其初始化2.在当前目录下安装webpack以及webpack-cli3.配置webpack自定义命令,使之生效4.运行自定义命令,打包webpack5.打包成功之后会将内容打包到dist文件夹下6.配置webpack1)修改webpack打包入口和出口2)配置…...

【Java SE】抽象类与接口

目录 【1】抽象类 【1.1】抽象类概念 【1.2】抽象类语法 【1.3】抽象类特性 【1.4】抽象类的作用 【2】接口 【2.1】接口的概念 【2.2】语法规则 【2.3】接口使用 【2.4】接口特性 【2.5】实现多个接口 【2.6】接口间的继承 【2.7】接口使用实例 【2.8】Clonable …...

如何快速掌握ppInk:Windows平台上的终极屏幕标注工具指南

如何快速掌握ppInk&#xff1a;Windows平台上的终极屏幕标注工具指南 【免费下载链接】ppInk Fork from Gink 项目地址: https://gitcode.com/gh_mirrors/pp/ppInk 你是否曾经在演示时需要快速标注屏幕内容&#xff0c;却发现现有工具要么功能太简陋&#xff0c;要么操作…...

WinForm用户控件调试踩坑记:从‘无法试运行’到完美模块测试的完整流程

WinForm用户控件调试实战&#xff1a;从模块移植到精准测试的完整指南 引言&#xff1a;为什么需要独立的控件测试环境&#xff1f; 在WinForm开发中&#xff0c;用户控件(UserControl)的复用与调试一直是让开发者头疼的问题。当你在主项目中直接测试一个复杂控件时&#xff0c…...

Sendwithus模板与现代邮件客户端兼容性测试:终极解决方案

Sendwithus模板与现代邮件客户端兼容性测试&#xff1a;终极解决方案 【免费下载链接】templates Sendwithus Open Source Email Templates 项目地址: https://gitcode.com/gh_mirrors/temp/templates Sendwithus Open Source Email Templates是一套强大的开源邮件模板集…...

基于Python的自动化科研写作工具:Aut_Sci_Write架构与实现

1. 项目概述&#xff1a;一个面向科研写作的自动化工具最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“Aut_Sci_Write”。光看名字&#xff0c;大概就能猜到它的核心方向&#xff1a;自动化科学写作。作为一个在科研和工程领域摸爬滚打多年的从业者&#xff0c;我深知一…...

终极Windows 11优化指南:使用Win11Debloat开源工具提升系统性能的完整方案

终极Windows 11优化指南&#xff1a;使用Win11Debloat开源工具提升系统性能的完整方案 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes …...

构建多模型智能客服时如何借助 Taotoken 实现灵活路由与降级

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 构建多模型智能客服时如何借助 Taotoken 实现灵活路由与降级 在构建企业级智能客服系统时&#xff0c;服务的稳定性和响应能力至关…...

别再手动画图表了!用这套Figma可视化组件库7.0,5分钟搞定大屏设计稿

别再手动画图表了&#xff01;用这套Figma可视化组件库7.0&#xff0c;5分钟搞定大屏设计稿 凌晨3点的设计工作室里&#xff0c;咖啡杯已经空了第三轮。李然盯着屏幕上那个反复修改了7次却始终不够"科技感"的柱状图&#xff0c;突然意识到——设计师的时间不该浪费在…...

原来选对床垫还能改善全家睡眠质量?

选对床垫&#xff0c;改善全家睡眠质量的秘密在快节奏的现代生活中&#xff0c;良好的睡眠质量变得越来越重要。一张合适的床垫不仅能提升个人的睡眠体验&#xff0c;还能改善全家人的睡眠质量。本文将探讨如何选择适合全家人的床垫&#xff0c;并重点介绍美德丽床垫的独特优势…...

Hyper-V DDA图形工具:告别PowerShell命令行的设备直通新时代

Hyper-V DDA图形工具&#xff1a;告别PowerShell命令行的设备直通新时代 【免费下载链接】DDA 实现Hyper-V离散设备分配功能的图形界面工具。A GUI Tool For Hyper-Vs Discrete Device Assignment(DDA). 项目地址: https://gitcode.com/gh_mirrors/dd/DDA 还在为Hyper-…...

低碳环境下新型电气能源系统优化配置与运行仿真研究

摘要&#xff1a;在“双碳”目标和新能源快速发展的背景下&#xff0c;传统电气能源系统面临碳排放高、新能源消纳能力不足以及运行调度灵活性较弱等问题。为提高系统低碳运行水平&#xff0c;本文以风电、光伏、储能、可控负荷和智慧电网为主要研究对象&#xff0c;开展低碳环…...