写一个简单的Java示例

下面基于公司域名www.baidu.com,编写第一个 Java 程序并详细说明文件夹结构、代码实现和运行步骤(遵循 Java 包命名规范:域名反转作为包名前缀)。

一、文件夹结构设计(核心:包名与路径完全对应)

Java 要求包名必须与文件夹路径严格一致 (否则会出现 "找不到类" 错误)。

域名www.baidu.com反转后为com.baidu.www,因此文件夹结构如下:

一、文件夹结构

推荐的 Java 项目基本结构如下(以 Windows 系统为例):

perl 复制代码
my-first-java-app/ # 项目根目录(可自定义名称) 
|── src/ # 源代码目录(约定俗成,存放.java文件) 
|    └── com/ # 对应域名的"com"后缀 
|        └── baidu/ # 对应域名的"baidu"主体 
|            └── www/ # 对应域名的"www"前缀 
|                └── HelloWorld.java # 主程序文件(类名=文件名)                 
└── bin/ # 编译输出目录(存放.class字节码文件,会自动创建)

二、Java 代码实现(HelloWorld.java)

在src/com/baidu/www/目录下创建HelloWorld.java,代码如下:

arduino 复制代码
// 包名必须与文件夹路径一致:com.baidu.www(对应src/com/baidu/www/) 

package com.baidu.www; 

/** 
* 第一个Java程序(基于域名www.baidu.com) 
* 功能:输出"Hello, www.baidu.com!" 
*/

public class HelloWorld { 
    // 程序入口方法(Java程序必须通过main方法启动) 
    public static void main(String[] args) { 
        // 打印输出语句(向控制台输出内容) 
        System.out.println("Hello, www.baidu.com!");
    }
}

代码说明:

  • package com.baidu.www;:声明包名,必须放在代码第一行,且与文件夹路径src/com/baidu/www/完全对应。
  • public class HelloWorld:类名必须与文件名HelloWorld.java完全一致(包括大小写)。
  • main方法:Java 程序的入口,格式固定为public static void main(String[] args)。

三、运行步骤(需提前安装 JDK 并配置环境变量)

1. 检查 JDK 是否安装成功

打开命令行(Windows:Win+R输入cmd;Mac/Linux:终端),输入以下命令,若能显示版本号则说明安装成功:

bash 复制代码
javac -version # 检查编译器版本(javac是Java编译器) 
java -version # 检查运行环境版本(java是Java运行工具)

2. 编译 Java 源代码(.java → .class)

编译的目的是将源代码(人类可读)转换为 JVM 可执行的字节码(.class 文件)。

步骤:

1.命令行进入项目根目录my-first-java-app:

bash 复制代码
# 假设项目放在D盘根目录,示例路径需替换为你的实际路径 

cd D:\my-first-java-app

2.执行编译命令:

bash 复制代码
javac src/com/baidu/www/HelloWorld.java -d bin

同一包内有多个类时,使用通配符*编译当前目录所有.java文件

bash 复制代码
# 编译src/com/baidu/www/下所有类(保持包结构输出到bin) 
javac src/com/baidu/www/*.java -d bin
  • 参数说明:

    src/com/baidu/www/HelloWorld.java是源代码路径;

    -d bin指定编译后的.class 文件输出到bin目录(会自动创建bin/com/baidu/www/目录结构,与包名对应)。

编译成功后,bin目录下会生成:bin/com/baidu/www/HelloWorld.class。

3. 运行 Java 程序(执行.class 文件)

通过java命令运行编译后的字节码文件,需要指定全限定类名 (包名 + 类名)。

步骤:

在项目根目录my-first-java-app下执行:

bash 复制代码
java -cp bin com.baidu.www.HelloWorld
  • 参数说明:

-cp bin表示类路径(告诉 JVM 在bin目录下找.class 文件);

com.baidu.www.HelloWorld是全限定类名(必须与包名 + 类名一致)。

运行成功结果:

Java 复制代码
Hello, www.baidu.com!

四、常见错误及解决方法

  1. "错误:找不到或无法加载主类"

    • 原因 1:类名与文件名不一致(如类名Hello但文件名为HelloWorld.java)。
      解决:确保类名(public class Xxx)与文件名(Xxx.java)完全一致。
    • 原因 2:包名与文件夹路径不一致(如包名com.baidu.www但文件放在src/com/baidu/下)。
      解决:文件必须放在src/com/baidu/www/目录下(与包名严格对应)。
    • 原因 3:运行时类路径或全限定类名错误。
      解决:确认命令是java -cp bin com.baidu.www.HelloWorld(注意-cp bin和类名的拼写)。
  2. "javac 不是内部或外部命令"

    • 原因:JDK 未安装或环境变量未配置。
      解决:重新安装 JDK,并将JDK安装目录/bin添加到系统环境变量Path中。

总结

本示例通过 "创建目录→编写代码→编译→运行" 四步完成第一个程序。核心是严格遵循 Java 包命名规范(域名反转作为包名),保证 "包名 = 文件夹路径", "类名 = 文件名",这是 Java 程序运行的基础。

相关推荐
陈随易17 小时前
Postman 被曝自动往 Claude Code 和 Codex 装插件
前端·后端·程序员
AI你一生一世18 小时前
不止于时序存储:DolphinDB 如何成为 AI 时代的工业智能底座
java·人工智能·struts·时序数据库·工业智能·dolphindb·ai基础设施
云-缩影19 小时前
拆解 AI 图像生成应用的后端架构:ECS、OSS 和大模型 API 怎么配合
java·spring boot·后端
瑞克-桑切斯19 小时前
7、MySQL 慢查询排查与优化实战指南
java·服务器·数据库
考虑考虑20 小时前
Posrgresql恢复.backup文件
数据库·后端·postgresql
无奈何杨20 小时前
风控决策系统决策流,策略模式,权重、顺序、投票、最坏
后端
Patrick_Wilson21 小时前
Go 为什么需要 defer?从函数怎么收尾说起
后端·go·编程语言
苏三说技术21 小时前
DeepSeek Harness入驻B站,评论区被干成了大型插件集市!
后端
橙序员小站1 天前
我一句话让 AI 把公众号工作台搭完了:部署实测记录
后端
Patrick_Wilson1 天前
从文本输出理解 Go 方法与接口
后端·go·编程语言