基础规则
这是一个最简单的 Java 应用程序,存储在 Welcome.java
文件中
java
public class Welcome {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
JavaScript 的规则相对松散,而 Java 程序有几个需要遵守的规则
- 源代码文件名和 public 类名保持一致,这也就意味着一个文件内只能有一个 public 类名
- 源代码文件使用
.java
作为拓展名 - 类名必须以大写字母开头,且只能包含字母、数字、下划线和美元符号,不能使用 Java 的关键字
- 包名是用来组织和管理 Java 类的一种机制,必须以小写字母开头,且只能包含小写字母、数字和点号
- 方法名必须以小写字母开头,且只能包含字母、数字和下划线
- Java 程序必须包含一个
main
方法,作为程序的入口点,方法签名必须是 public static void main(String[] args)
代码组织
Java 的代码组织主要通过包(Package)和类(Class)实现。包是一组相关的类和接口的集合,它们被组织在一个统一的命名空间下,以便更好地管理和组织。类是 Java 中最基本的代码单元,它定义了对象的属性和行为。
使用 package
关键字声明包,一般包名中的英文单词全部使用小写
java
// 声明包
package com.example;
public class Test {
}
Java 中的包命名规则遵循反转的 Internet 域名规则,也就是说包名应该从上到下按照域名的层次结构来命名,每个层次结构使用小写字母。在阿里巴巴开发一个 TestProject 的项目,包名可能是 com.alibaba.testproject
使用 import
关键字引入其它包内的类与接口,以便在当前类中使用,Java import 无法给引入对象设置别名,多个类名重复时需要使用完整路径
java
// 引入类
import com.package.Test;
Java 类一般都有 public、protected、private 等访问限制符修饰,不加任何访问限制符默认为可以被同一个包内的类访问
编译 & 运行
Java 代码需要编译后运行,javac
是 Java 编译器的命令行工具
bash
$ javac Welcome.java
如果编译成功,将会生成一个与 public 类名称相同、后缀名为 .class 的字节码文件 Welcome.class
,使用 Java 命令运行可以在控制台输出程序结果
bash
$ java Welcome
Java 代码编写完成后,需要经过编译器生成对应的字节码文件,而 Java 虚拟机(JVM)则负责解释执行这些字节码文件。由于 Java 虚拟机的存在,Java 程序可以跨平台运行、在不同的操作系统上运行相同的 Java 程序
另外 Java 虚拟机还提供了一些高级功能,例如利用即时编译器在运行时将热点代码编译成本地机器码,提高程序的执行效率;提供Java调试器接口(Java Debug Interface),方便开发人员进行调试等
打包
Java 程序发布通常需要打包为 jar(Java ARchive)格式,内部可以包含 Java 字节码文件、配置文件、图片等资源文件
bash
$ jar -cvf jar文件名.jar 需要打包的文件或文件夹
- -c:创建 jar 文件
- -v:在控制台输出打包过程
- -f:指定 jar 文件名称
在一般情况下打包、解压 jar 文件会通过 Eclipse、IntelliJ IDEA 等集成开发环境完成,打包完成后就可以把 jar 文件发布到 Maven、Gradle 了